diff options
-rw-r--r-- | deploy/flake.lock | 299 | ||||
-rw-r--r-- | flake.lock | 299 | ||||
-rw-r--r-- | flakes/flake.lock | 297 | ||||
-rw-r--r-- | flakes/flake.nix | 1 | ||||
-rw-r--r-- | flakes/private/borg_backup/flake.lock | 36 | ||||
-rw-r--r-- | flakes/private/borg_backup/flake.nix | 321 | ||||
-rw-r--r-- | systems/backup-2/base.nix | 9 | ||||
-rw-r--r-- | systems/backup-2/databases/mariadb_replication.nix | 5 | ||||
-rw-r--r-- | systems/backup-2/databases/openldap_replication.nix | 6 | ||||
-rw-r--r-- | systems/backup-2/databases/postgresql_replication.nix | 12 | ||||
-rw-r--r-- | systems/backup-2/databases/redis_replication.nix | 7 | ||||
-rw-r--r-- | systems/backup-2/flake.lock | 75 | ||||
-rw-r--r-- | systems/backup-2/flake.nix | 2 | ||||
-rw-r--r-- | systems/eldiron/base.nix | 1 | ||||
-rw-r--r-- | systems/eldiron/borg_backup.nix | 242 | ||||
-rw-r--r-- | systems/eldiron/flake.lock | 63 | ||||
-rw-r--r-- | systems/eldiron/flake.nix | 2 |
17 files changed, 1135 insertions, 542 deletions
diff --git a/deploy/flake.lock b/deploy/flake.lock index 49e29c8..cac84a9 100644 --- a/deploy/flake.lock +++ b/deploy/flake.lock | |||
@@ -112,6 +112,22 @@ | |||
112 | "type": "path" | 112 | "type": "path" |
113 | } | 113 | } |
114 | }, | 114 | }, |
115 | "borg-backup": { | ||
116 | "inputs": { | ||
117 | "environment": "environment", | ||
118 | "secrets": "secrets" | ||
119 | }, | ||
120 | "locked": { | ||
121 | "lastModified": 1, | ||
122 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
123 | "path": "../../flakes/private/borg_backup", | ||
124 | "type": "path" | ||
125 | }, | ||
126 | "original": { | ||
127 | "path": "../../flakes/private/borg_backup", | ||
128 | "type": "path" | ||
129 | } | ||
130 | }, | ||
115 | "buildslist": { | 131 | "buildslist": { |
116 | "flake": false, | 132 | "flake": false, |
117 | "locked": { | 133 | "locked": { |
@@ -146,7 +162,7 @@ | |||
146 | }, | 162 | }, |
147 | "chatons": { | 163 | "chatons": { |
148 | "inputs": { | 164 | "inputs": { |
149 | "environment": "environment" | 165 | "environment": "environment_2" |
150 | }, | 166 | }, |
151 | "locked": { | 167 | "locked": { |
152 | "lastModified": 1, | 168 | "lastModified": 1, |
@@ -161,7 +177,7 @@ | |||
161 | }, | 177 | }, |
162 | "chatons_2": { | 178 | "chatons_2": { |
163 | "inputs": { | 179 | "inputs": { |
164 | "environment": "environment_17" | 180 | "environment": "environment_19" |
165 | }, | 181 | }, |
166 | "locked": { | 182 | "locked": { |
167 | "lastModified": 1, | 183 | "lastModified": 1, |
@@ -674,11 +690,11 @@ | |||
674 | "locked": { | 690 | "locked": { |
675 | "lastModified": 1, | 691 | "lastModified": 1, |
676 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 692 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
677 | "path": "../../flakes/private/environment", | 693 | "path": "../environment", |
678 | "type": "path" | 694 | "type": "path" |
679 | }, | 695 | }, |
680 | "original": { | 696 | "original": { |
681 | "path": "../../flakes/private/environment", | 697 | "path": "../environment", |
682 | "type": "path" | 698 | "type": "path" |
683 | } | 699 | } |
684 | }, | 700 | }, |
@@ -698,11 +714,11 @@ | |||
698 | "locked": { | 714 | "locked": { |
699 | "lastModified": 1, | 715 | "lastModified": 1, |
700 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 716 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
701 | "path": "../../flakes/private/environment", | 717 | "path": "../environment", |
702 | "type": "path" | 718 | "type": "path" |
703 | }, | 719 | }, |
704 | "original": { | 720 | "original": { |
705 | "path": "../../flakes/private/environment", | 721 | "path": "../environment", |
706 | "type": "path" | 722 | "type": "path" |
707 | } | 723 | } |
708 | }, | 724 | }, |
@@ -710,11 +726,11 @@ | |||
710 | "locked": { | 726 | "locked": { |
711 | "lastModified": 1, | 727 | "lastModified": 1, |
712 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 728 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
713 | "path": "../environment", | 729 | "path": "../../flakes/private/environment", |
714 | "type": "path" | 730 | "type": "path" |
715 | }, | 731 | }, |
716 | "original": { | 732 | "original": { |
717 | "path": "../environment", | 733 | "path": "../../flakes/private/environment", |
718 | "type": "path" | 734 | "type": "path" |
719 | } | 735 | } |
720 | }, | 736 | }, |
@@ -734,11 +750,11 @@ | |||
734 | "locked": { | 750 | "locked": { |
735 | "lastModified": 1, | 751 | "lastModified": 1, |
736 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 752 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
737 | "path": "../../flakes/private/environment", | 753 | "path": "../environment", |
738 | "type": "path" | 754 | "type": "path" |
739 | }, | 755 | }, |
740 | "original": { | 756 | "original": { |
741 | "path": "../../flakes/private/environment", | 757 | "path": "../environment", |
742 | "type": "path" | 758 | "type": "path" |
743 | } | 759 | } |
744 | }, | 760 | }, |
@@ -758,11 +774,11 @@ | |||
758 | "locked": { | 774 | "locked": { |
759 | "lastModified": 1, | 775 | "lastModified": 1, |
760 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 776 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
761 | "path": "../environment", | 777 | "path": "../../flakes/private/environment", |
762 | "type": "path" | 778 | "type": "path" |
763 | }, | 779 | }, |
764 | "original": { | 780 | "original": { |
765 | "path": "../environment", | 781 | "path": "../../flakes/private/environment", |
766 | "type": "path" | 782 | "type": "path" |
767 | } | 783 | } |
768 | }, | 784 | }, |
@@ -830,11 +846,11 @@ | |||
830 | "locked": { | 846 | "locked": { |
831 | "lastModified": 1, | 847 | "lastModified": 1, |
832 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 848 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
833 | "path": "../environment", | 849 | "path": "../../flakes/private/environment", |
834 | "type": "path" | 850 | "type": "path" |
835 | }, | 851 | }, |
836 | "original": { | 852 | "original": { |
837 | "path": "../environment", | 853 | "path": "../../flakes/private/environment", |
838 | "type": "path" | 854 | "type": "path" |
839 | } | 855 | } |
840 | }, | 856 | }, |
@@ -874,6 +890,42 @@ | |||
874 | "type": "path" | 890 | "type": "path" |
875 | } | 891 | } |
876 | }, | 892 | }, |
893 | "environment_33": { | ||
894 | "locked": { | ||
895 | "lastModified": 1, | ||
896 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
897 | "path": "../environment", | ||
898 | "type": "path" | ||
899 | }, | ||
900 | "original": { | ||
901 | "path": "../environment", | ||
902 | "type": "path" | ||
903 | } | ||
904 | }, | ||
905 | "environment_34": { | ||
906 | "locked": { | ||
907 | "lastModified": 1, | ||
908 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
909 | "path": "../environment", | ||
910 | "type": "path" | ||
911 | }, | ||
912 | "original": { | ||
913 | "path": "../environment", | ||
914 | "type": "path" | ||
915 | } | ||
916 | }, | ||
917 | "environment_35": { | ||
918 | "locked": { | ||
919 | "lastModified": 1, | ||
920 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
921 | "path": "../environment", | ||
922 | "type": "path" | ||
923 | }, | ||
924 | "original": { | ||
925 | "path": "../environment", | ||
926 | "type": "path" | ||
927 | } | ||
928 | }, | ||
877 | "environment_4": { | 929 | "environment_4": { |
878 | "locked": { | 930 | "locked": { |
879 | "lastModified": 1, | 931 | "lastModified": 1, |
@@ -926,11 +978,11 @@ | |||
926 | "locked": { | 978 | "locked": { |
927 | "lastModified": 1, | 979 | "lastModified": 1, |
928 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 980 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
929 | "path": "../../flakes/private/environment", | 981 | "path": "../environment", |
930 | "type": "path" | 982 | "type": "path" |
931 | }, | 983 | }, |
932 | "original": { | 984 | "original": { |
933 | "path": "../../flakes/private/environment", | 985 | "path": "../environment", |
934 | "type": "path" | 986 | "type": "path" |
935 | } | 987 | } |
936 | }, | 988 | }, |
@@ -938,11 +990,11 @@ | |||
938 | "locked": { | 990 | "locked": { |
939 | "lastModified": 1, | 991 | "lastModified": 1, |
940 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 992 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
941 | "path": "../environment", | 993 | "path": "../../flakes/private/environment", |
942 | "type": "path" | 994 | "type": "path" |
943 | }, | 995 | }, |
944 | "original": { | 996 | "original": { |
945 | "path": "../environment", | 997 | "path": "../../flakes/private/environment", |
946 | "type": "path" | 998 | "type": "path" |
947 | } | 999 | } |
948 | }, | 1000 | }, |
@@ -2703,8 +2755,8 @@ | |||
2703 | }, | 2755 | }, |
2704 | "mail-relay": { | 2756 | "mail-relay": { |
2705 | "inputs": { | 2757 | "inputs": { |
2706 | "environment": "environment_3", | 2758 | "environment": "environment_4", |
2707 | "secrets": "secrets" | 2759 | "secrets": "secrets_2" |
2708 | }, | 2760 | }, |
2709 | "locked": { | 2761 | "locked": { |
2710 | "lastModified": 1, | 2762 | "lastModified": 1, |
@@ -2719,8 +2771,8 @@ | |||
2719 | }, | 2771 | }, |
2720 | "mail-relay_2": { | 2772 | "mail-relay_2": { |
2721 | "inputs": { | 2773 | "inputs": { |
2722 | "environment": "environment_19", | 2774 | "environment": "environment_21", |
2723 | "secrets": "secrets_14" | 2775 | "secrets": "secrets_16" |
2724 | }, | 2776 | }, |
2725 | "locked": { | 2777 | "locked": { |
2726 | "lastModified": 1, | 2778 | "lastModified": 1, |
@@ -2760,6 +2812,7 @@ | |||
2760 | "s-opendmarc": "s-opendmarc", | 2812 | "s-opendmarc": "s-opendmarc", |
2761 | "s-paste": "s-paste", | 2813 | "s-paste": "s-paste", |
2762 | "s-peertube": "s-peertube", | 2814 | "s-peertube": "s-peertube", |
2815 | "s-private-borg-backup": "s-private-borg-backup", | ||
2763 | "s-private-buildbot": "s-private-buildbot", | 2816 | "s-private-buildbot": "s-private-buildbot", |
2764 | "s-private-chatons": "s-private-chatons", | 2817 | "s-private-chatons": "s-private-chatons", |
2765 | "s-private-environment": "s-private-environment", | 2818 | "s-private-environment": "s-private-environment", |
@@ -2783,7 +2836,7 @@ | |||
2783 | }, | 2836 | }, |
2784 | "locked": { | 2837 | "locked": { |
2785 | "lastModified": 1, | 2838 | "lastModified": 1, |
2786 | "narHash": "sha256-bacTCDQeddb777/pYiLIhcSvxbc1WDQSXKqfTCJPzwo=", | 2839 | "narHash": "sha256-iTtXjTzGUwsQahHeiQfECPmHZ/orceFH54SimHgpBaA=", |
2787 | "path": "../flakes", | 2840 | "path": "../flakes", |
2788 | "type": "path" | 2841 | "type": "path" |
2789 | }, | 2842 | }, |
@@ -2868,11 +2921,11 @@ | |||
2868 | }, | 2921 | }, |
2869 | "milters": { | 2922 | "milters": { |
2870 | "inputs": { | 2923 | "inputs": { |
2871 | "environment": "environment_4", | 2924 | "environment": "environment_5", |
2872 | "files-watcher": "files-watcher", | 2925 | "files-watcher": "files-watcher", |
2873 | "openarc": "openarc", | 2926 | "openarc": "openarc", |
2874 | "opendmarc": "opendmarc", | 2927 | "opendmarc": "opendmarc", |
2875 | "secrets": "secrets_2" | 2928 | "secrets": "secrets_3" |
2876 | }, | 2929 | }, |
2877 | "locked": { | 2930 | "locked": { |
2878 | "lastModified": 1, | 2931 | "lastModified": 1, |
@@ -2887,10 +2940,10 @@ | |||
2887 | }, | 2940 | }, |
2888 | "monitoring": { | 2941 | "monitoring": { |
2889 | "inputs": { | 2942 | "inputs": { |
2890 | "environment": "environment_5", | 2943 | "environment": "environment_6", |
2891 | "naemon": "naemon", | 2944 | "naemon": "naemon", |
2892 | "nixpkgs-lib": "nixpkgs-lib", | 2945 | "nixpkgs-lib": "nixpkgs-lib", |
2893 | "secrets": "secrets_3" | 2946 | "secrets": "secrets_4" |
2894 | }, | 2947 | }, |
2895 | "locked": { | 2948 | "locked": { |
2896 | "lastModified": 1, | 2949 | "lastModified": 1, |
@@ -2905,10 +2958,10 @@ | |||
2905 | }, | 2958 | }, |
2906 | "monitoring_2": { | 2959 | "monitoring_2": { |
2907 | "inputs": { | 2960 | "inputs": { |
2908 | "environment": "environment_9", | 2961 | "environment": "environment_10", |
2909 | "naemon": "naemon_2", | 2962 | "naemon": "naemon_2", |
2910 | "nixpkgs-lib": "nixpkgs-lib_4", | 2963 | "nixpkgs-lib": "nixpkgs-lib_4", |
2911 | "secrets": "secrets_7" | 2964 | "secrets": "secrets_8" |
2912 | }, | 2965 | }, |
2913 | "locked": { | 2966 | "locked": { |
2914 | "lastModified": 1, | 2967 | "lastModified": 1, |
@@ -2923,10 +2976,10 @@ | |||
2923 | }, | 2976 | }, |
2924 | "monitoring_3": { | 2977 | "monitoring_3": { |
2925 | "inputs": { | 2978 | "inputs": { |
2926 | "environment": "environment_20", | 2979 | "environment": "environment_22", |
2927 | "naemon": "naemon_4", | 2980 | "naemon": "naemon_4", |
2928 | "nixpkgs-lib": "nixpkgs-lib_14", | 2981 | "nixpkgs-lib": "nixpkgs-lib_14", |
2929 | "secrets": "secrets_15" | 2982 | "secrets": "secrets_17" |
2930 | }, | 2983 | }, |
2931 | "locked": { | 2984 | "locked": { |
2932 | "lastModified": 1, | 2985 | "lastModified": 1, |
@@ -2941,10 +2994,10 @@ | |||
2941 | }, | 2994 | }, |
2942 | "monitoring_4": { | 2995 | "monitoring_4": { |
2943 | "inputs": { | 2996 | "inputs": { |
2944 | "environment": "environment_23", | 2997 | "environment": "environment_25", |
2945 | "naemon": "naemon_5", | 2998 | "naemon": "naemon_5", |
2946 | "nixpkgs-lib": "nixpkgs-lib_17", | 2999 | "nixpkgs-lib": "nixpkgs-lib_17", |
2947 | "secrets": "secrets_17" | 3000 | "secrets": "secrets_19" |
2948 | }, | 3001 | }, |
2949 | "locked": { | 3002 | "locked": { |
2950 | "lastModified": 1, | 3003 | "lastModified": 1, |
@@ -3814,8 +3867,9 @@ | |||
3814 | }, | 3867 | }, |
3815 | "n-backup-2": { | 3868 | "n-backup-2": { |
3816 | "inputs": { | 3869 | "inputs": { |
3870 | "borg-backup": "borg-backup", | ||
3817 | "chatons": "chatons", | 3871 | "chatons": "chatons", |
3818 | "environment": "environment_2", | 3872 | "environment": "environment_3", |
3819 | "loginctl-linger": "loginctl-linger", | 3873 | "loginctl-linger": "loginctl-linger", |
3820 | "mail-relay": "mail-relay", | 3874 | "mail-relay": "mail-relay", |
3821 | "milters": "milters", | 3875 | "milters": "milters", |
@@ -3827,12 +3881,12 @@ | |||
3827 | "opendmarc": "opendmarc_2", | 3881 | "opendmarc": "opendmarc_2", |
3828 | "openldap": "openldap", | 3882 | "openldap": "openldap", |
3829 | "rsync_backup": "rsync_backup", | 3883 | "rsync_backup": "rsync_backup", |
3830 | "secrets": "secrets_6", | 3884 | "secrets": "secrets_7", |
3831 | "system": "system" | 3885 | "system": "system" |
3832 | }, | 3886 | }, |
3833 | "locked": { | 3887 | "locked": { |
3834 | "lastModified": 1, | 3888 | "lastModified": 1, |
3835 | "narHash": "sha256-EPkvkGTy7RlhCXcngA/zGfXuiai7kE8YSL2siYe8HOI=", | 3889 | "narHash": "sha256-gnCoyp6EcUzjBhmNrPel4ZzhK2nK6VLBziYJkKiXcuU=", |
3836 | "path": "../systems/backup-2", | 3890 | "path": "../systems/backup-2", |
3837 | "type": "path" | 3891 | "type": "path" |
3838 | }, | 3892 | }, |
@@ -3843,14 +3897,14 @@ | |||
3843 | }, | 3897 | }, |
3844 | "n-dilion": { | 3898 | "n-dilion": { |
3845 | "inputs": { | 3899 | "inputs": { |
3846 | "environment": "environment_8", | 3900 | "environment": "environment_9", |
3847 | "files-watcher": "files-watcher_4", | 3901 | "files-watcher": "files-watcher_4", |
3848 | "loginctl-linger": "loginctl-linger_2", | 3902 | "loginctl-linger": "loginctl-linger_2", |
3849 | "monitoring": "monitoring_2", | 3903 | "monitoring": "monitoring_2", |
3850 | "my-lib": "my-lib_2", | 3904 | "my-lib": "my-lib_2", |
3851 | "myuids": "myuids_7", | 3905 | "myuids": "myuids_7", |
3852 | "nixpkgs": "nixpkgs_17", | 3906 | "nixpkgs": "nixpkgs_17", |
3853 | "secrets": "secrets_8", | 3907 | "secrets": "secrets_9", |
3854 | "system": "system_2" | 3908 | "system": "system_2" |
3855 | }, | 3909 | }, |
3856 | "locked": { | 3910 | "locked": { |
@@ -3869,6 +3923,7 @@ | |||
3869 | "dns-nix": "dns-nix", | 3923 | "dns-nix": "dns-nix", |
3870 | "my-lib": "my-lib_3", | 3924 | "my-lib": "my-lib_3", |
3871 | "nixpkgs": "nixpkgs_24", | 3925 | "nixpkgs": "nixpkgs_24", |
3926 | "private-borg-backup": "private-borg-backup", | ||
3872 | "private-buildbot": "private-buildbot", | 3927 | "private-buildbot": "private-buildbot", |
3873 | "private-chatons": "private-chatons", | 3928 | "private-chatons": "private-chatons", |
3874 | "private-environment": "private-environment", | 3929 | "private-environment": "private-environment", |
@@ -3903,7 +3958,7 @@ | |||
3903 | }, | 3958 | }, |
3904 | "locked": { | 3959 | "locked": { |
3905 | "lastModified": 1, | 3960 | "lastModified": 1, |
3906 | "narHash": "sha256-GP5n6/p0kgd0lf6KhPZqZxybcUPA38kl054Uo6CWYkE=", | 3961 | "narHash": "sha256-deESGvYrIO1Luc3tD+a+QGq5w8ZlzZrIkJa6baDWhXE=", |
3907 | "path": "../systems/eldiron", | 3962 | "path": "../systems/eldiron", |
3908 | "type": "path" | 3963 | "type": "path" |
3909 | }, | 3964 | }, |
@@ -3915,7 +3970,7 @@ | |||
3915 | "n-monitoring-1": { | 3970 | "n-monitoring-1": { |
3916 | "inputs": { | 3971 | "inputs": { |
3917 | "chatons": "chatons_2", | 3972 | "chatons": "chatons_2", |
3918 | "environment": "environment_18", | 3973 | "environment": "environment_20", |
3919 | "files-watcher": "files-watcher_9", | 3974 | "files-watcher": "files-watcher_9", |
3920 | "loginctl-linger": "loginctl-linger_3", | 3975 | "loginctl-linger": "loginctl-linger_3", |
3921 | "mail-relay": "mail-relay_2", | 3976 | "mail-relay": "mail-relay_2", |
@@ -3924,7 +3979,7 @@ | |||
3924 | "myuids": "myuids_23", | 3979 | "myuids": "myuids_23", |
3925 | "nixpkgs": "nixpkgs_55", | 3980 | "nixpkgs": "nixpkgs_55", |
3926 | "ports": "ports", | 3981 | "ports": "ports", |
3927 | "secrets": "secrets_16", | 3982 | "secrets": "secrets_18", |
3928 | "system": "system_3" | 3983 | "system": "system_3" |
3929 | }, | 3984 | }, |
3930 | "locked": { | 3985 | "locked": { |
@@ -3940,7 +3995,7 @@ | |||
3940 | }, | 3995 | }, |
3941 | "n-quatresaisons": { | 3996 | "n-quatresaisons": { |
3942 | "inputs": { | 3997 | "inputs": { |
3943 | "environment": "environment_22", | 3998 | "environment": "environment_24", |
3944 | "files-watcher": "files-watcher_10", | 3999 | "files-watcher": "files-watcher_10", |
3945 | "landing-page": "landing-page", | 4000 | "landing-page": "landing-page", |
3946 | "monitoring": "monitoring_4", | 4001 | "monitoring": "monitoring_4", |
@@ -3949,7 +4004,7 @@ | |||
3949 | "myuids": "myuids_26", | 4004 | "myuids": "myuids_26", |
3950 | "nixpkgs": "nixpkgs_63", | 4005 | "nixpkgs": "nixpkgs_63", |
3951 | "ports": "ports_2", | 4006 | "ports": "ports_2", |
3952 | "secrets": "secrets_18", | 4007 | "secrets": "secrets_20", |
3953 | "system": "system_4" | 4008 | "system": "system_4" |
3954 | }, | 4009 | }, |
3955 | "locked": { | 4010 | "locked": { |
@@ -7000,7 +7055,7 @@ | |||
7000 | "inputs": { | 7055 | "inputs": { |
7001 | "files-watcher": "files-watcher_2", | 7056 | "files-watcher": "files-watcher_2", |
7002 | "openarc": "openarc_4", | 7057 | "openarc": "openarc_4", |
7003 | "secrets": "secrets_4" | 7058 | "secrets": "secrets_5" |
7004 | }, | 7059 | }, |
7005 | "locked": { | 7060 | "locked": { |
7006 | "lastModified": 1, | 7061 | "lastModified": 1, |
@@ -7134,10 +7189,10 @@ | |||
7134 | }, | 7189 | }, |
7135 | "opendmarc_2": { | 7190 | "opendmarc_2": { |
7136 | "inputs": { | 7191 | "inputs": { |
7137 | "environment": "environment_6", | 7192 | "environment": "environment_7", |
7138 | "files-watcher": "files-watcher_3", | 7193 | "files-watcher": "files-watcher_3", |
7139 | "opendmarc": "opendmarc_3", | 7194 | "opendmarc": "opendmarc_3", |
7140 | "secrets": "secrets_5" | 7195 | "secrets": "secrets_6" |
7141 | }, | 7196 | }, |
7142 | "locked": { | 7197 | "locked": { |
7143 | "lastModified": 1, | 7198 | "lastModified": 1, |
@@ -7457,6 +7512,22 @@ | |||
7457 | "type": "path" | 7512 | "type": "path" |
7458 | } | 7513 | } |
7459 | }, | 7514 | }, |
7515 | "private-borg-backup": { | ||
7516 | "inputs": { | ||
7517 | "environment": "environment_12", | ||
7518 | "secrets": "secrets_10" | ||
7519 | }, | ||
7520 | "locked": { | ||
7521 | "lastModified": 1, | ||
7522 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
7523 | "path": "../../flakes/private/borg_backup", | ||
7524 | "type": "path" | ||
7525 | }, | ||
7526 | "original": { | ||
7527 | "path": "../../flakes/private/borg_backup", | ||
7528 | "type": "path" | ||
7529 | } | ||
7530 | }, | ||
7460 | "private-buildbot": { | 7531 | "private-buildbot": { |
7461 | "inputs": { | 7532 | "inputs": { |
7462 | "buildslist": "buildslist", | 7533 | "buildslist": "buildslist", |
@@ -7476,7 +7547,7 @@ | |||
7476 | }, | 7547 | }, |
7477 | "private-chatons": { | 7548 | "private-chatons": { |
7478 | "inputs": { | 7549 | "inputs": { |
7479 | "environment": "environment_11" | 7550 | "environment": "environment_13" |
7480 | }, | 7551 | }, |
7481 | "locked": { | 7552 | "locked": { |
7482 | "lastModified": 1, | 7553 | "lastModified": 1, |
@@ -7515,11 +7586,11 @@ | |||
7515 | }, | 7586 | }, |
7516 | "private-milters": { | 7587 | "private-milters": { |
7517 | "inputs": { | 7588 | "inputs": { |
7518 | "environment": "environment_12", | 7589 | "environment": "environment_14", |
7519 | "files-watcher": "files-watcher_5", | 7590 | "files-watcher": "files-watcher_5", |
7520 | "openarc": "openarc_6", | 7591 | "openarc": "openarc_6", |
7521 | "opendmarc": "opendmarc_4", | 7592 | "opendmarc": "opendmarc_4", |
7522 | "secrets": "secrets_9" | 7593 | "secrets": "secrets_11" |
7523 | }, | 7594 | }, |
7524 | "locked": { | 7595 | "locked": { |
7525 | "lastModified": 1, | 7596 | "lastModified": 1, |
@@ -7534,10 +7605,10 @@ | |||
7534 | }, | 7605 | }, |
7535 | "private-monitoring": { | 7606 | "private-monitoring": { |
7536 | "inputs": { | 7607 | "inputs": { |
7537 | "environment": "environment_13", | 7608 | "environment": "environment_15", |
7538 | "naemon": "naemon_3", | 7609 | "naemon": "naemon_3", |
7539 | "nixpkgs-lib": "nixpkgs-lib_8", | 7610 | "nixpkgs-lib": "nixpkgs-lib_8", |
7540 | "secrets": "secrets_10" | 7611 | "secrets": "secrets_12" |
7541 | }, | 7612 | }, |
7542 | "locked": { | 7613 | "locked": { |
7543 | "lastModified": 1, | 7614 | "lastModified": 1, |
@@ -7554,7 +7625,7 @@ | |||
7554 | "inputs": { | 7625 | "inputs": { |
7555 | "files-watcher": "files-watcher_6", | 7626 | "files-watcher": "files-watcher_6", |
7556 | "openarc": "openarc_8", | 7627 | "openarc": "openarc_8", |
7557 | "secrets": "secrets_11" | 7628 | "secrets": "secrets_13" |
7558 | }, | 7629 | }, |
7559 | "locked": { | 7630 | "locked": { |
7560 | "lastModified": 1, | 7631 | "lastModified": 1, |
@@ -7569,10 +7640,10 @@ | |||
7569 | }, | 7640 | }, |
7570 | "private-opendmarc": { | 7641 | "private-opendmarc": { |
7571 | "inputs": { | 7642 | "inputs": { |
7572 | "environment": "environment_14", | 7643 | "environment": "environment_16", |
7573 | "files-watcher": "files-watcher_7", | 7644 | "files-watcher": "files-watcher_7", |
7574 | "opendmarc": "opendmarc_5", | 7645 | "opendmarc": "opendmarc_5", |
7575 | "secrets": "secrets_12" | 7646 | "secrets": "secrets_14" |
7576 | }, | 7647 | }, |
7577 | "locked": { | 7648 | "locked": { |
7578 | "lastModified": 1, | 7649 | "lastModified": 1, |
@@ -7632,8 +7703,8 @@ | |||
7632 | }, | 7703 | }, |
7633 | "private-ssh": { | 7704 | "private-ssh": { |
7634 | "inputs": { | 7705 | "inputs": { |
7635 | "environment": "environment_15", | 7706 | "environment": "environment_17", |
7636 | "secrets": "secrets_13" | 7707 | "secrets": "secrets_15" |
7637 | }, | 7708 | }, |
7638 | "locked": { | 7709 | "locked": { |
7639 | "lastModified": 1, | 7710 | "lastModified": 1, |
@@ -7649,7 +7720,7 @@ | |||
7649 | "private-system": { | 7720 | "private-system": { |
7650 | "inputs": { | 7721 | "inputs": { |
7651 | "backports": "backports_3", | 7722 | "backports": "backports_3", |
7652 | "environment": "environment_16", | 7723 | "environment": "environment_18", |
7653 | "mypackages": "mypackages_3", | 7724 | "mypackages": "mypackages_3", |
7654 | "myuids": "myuids_15", | 7725 | "myuids": "myuids_15", |
7655 | "secrets-public": "secrets-public_3" | 7726 | "secrets-public": "secrets-public_3" |
@@ -7668,7 +7739,7 @@ | |||
7668 | "private-system_2": { | 7739 | "private-system_2": { |
7669 | "inputs": { | 7740 | "inputs": { |
7670 | "backports": "backports_6", | 7741 | "backports": "backports_6", |
7671 | "environment": "environment_25", | 7742 | "environment": "environment_27", |
7672 | "mypackages": "mypackages_9", | 7743 | "mypackages": "mypackages_9", |
7673 | "myuids": "myuids_28", | 7744 | "myuids": "myuids_28", |
7674 | "secrets-public": "secrets-public_6" | 7745 | "secrets-public": "secrets-public_6" |
@@ -8005,7 +8076,7 @@ | |||
8005 | "devshell": "devshell", | 8076 | "devshell": "devshell", |
8006 | "main-flake": "main-flake", | 8077 | "main-flake": "main-flake", |
8007 | "nixpkgs": "nixpkgs_105", | 8078 | "nixpkgs": "nixpkgs_105", |
8008 | "secrets": "secrets_25" | 8079 | "secrets": "secrets_28" |
8009 | } | 8080 | } |
8010 | }, | 8081 | }, |
8011 | "rsync_backup": { | 8082 | "rsync_backup": { |
@@ -8324,6 +8395,22 @@ | |||
8324 | "type": "path" | 8395 | "type": "path" |
8325 | } | 8396 | } |
8326 | }, | 8397 | }, |
8398 | "s-private-borg-backup": { | ||
8399 | "inputs": { | ||
8400 | "environment": "environment_28", | ||
8401 | "secrets": "secrets_21" | ||
8402 | }, | ||
8403 | "locked": { | ||
8404 | "lastModified": 1, | ||
8405 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
8406 | "path": "./private/borg_backup", | ||
8407 | "type": "path" | ||
8408 | }, | ||
8409 | "original": { | ||
8410 | "path": "./private/borg_backup", | ||
8411 | "type": "path" | ||
8412 | } | ||
8413 | }, | ||
8327 | "s-private-buildbot": { | 8414 | "s-private-buildbot": { |
8328 | "inputs": { | 8415 | "inputs": { |
8329 | "buildslist": "buildslist_2", | 8416 | "buildslist": "buildslist_2", |
@@ -8343,7 +8430,7 @@ | |||
8343 | }, | 8430 | }, |
8344 | "s-private-chatons": { | 8431 | "s-private-chatons": { |
8345 | "inputs": { | 8432 | "inputs": { |
8346 | "environment": "environment_26" | 8433 | "environment": "environment_29" |
8347 | }, | 8434 | }, |
8348 | "locked": { | 8435 | "locked": { |
8349 | "lastModified": 1, | 8436 | "lastModified": 1, |
@@ -8370,8 +8457,8 @@ | |||
8370 | }, | 8457 | }, |
8371 | "s-private-mail-relay": { | 8458 | "s-private-mail-relay": { |
8372 | "inputs": { | 8459 | "inputs": { |
8373 | "environment": "environment_27", | 8460 | "environment": "environment_30", |
8374 | "secrets": "secrets_19" | 8461 | "secrets": "secrets_22" |
8375 | }, | 8462 | }, |
8376 | "locked": { | 8463 | "locked": { |
8377 | "lastModified": 1, | 8464 | "lastModified": 1, |
@@ -8386,11 +8473,11 @@ | |||
8386 | }, | 8473 | }, |
8387 | "s-private-milters": { | 8474 | "s-private-milters": { |
8388 | "inputs": { | 8475 | "inputs": { |
8389 | "environment": "environment_28", | 8476 | "environment": "environment_31", |
8390 | "files-watcher": "files-watcher_13", | 8477 | "files-watcher": "files-watcher_13", |
8391 | "openarc": "openarc_12", | 8478 | "openarc": "openarc_12", |
8392 | "opendmarc": "opendmarc_6", | 8479 | "opendmarc": "opendmarc_6", |
8393 | "secrets": "secrets_20" | 8480 | "secrets": "secrets_23" |
8394 | }, | 8481 | }, |
8395 | "locked": { | 8482 | "locked": { |
8396 | "lastModified": 1, | 8483 | "lastModified": 1, |
@@ -8405,10 +8492,10 @@ | |||
8405 | }, | 8492 | }, |
8406 | "s-private-monitoring": { | 8493 | "s-private-monitoring": { |
8407 | "inputs": { | 8494 | "inputs": { |
8408 | "environment": "environment_29", | 8495 | "environment": "environment_32", |
8409 | "naemon": "naemon_6", | 8496 | "naemon": "naemon_6", |
8410 | "nixpkgs-lib": "nixpkgs-lib_26", | 8497 | "nixpkgs-lib": "nixpkgs-lib_26", |
8411 | "secrets": "secrets_21" | 8498 | "secrets": "secrets_24" |
8412 | }, | 8499 | }, |
8413 | "locked": { | 8500 | "locked": { |
8414 | "lastModified": 1, | 8501 | "lastModified": 1, |
@@ -8425,7 +8512,7 @@ | |||
8425 | "inputs": { | 8512 | "inputs": { |
8426 | "files-watcher": "files-watcher_14", | 8513 | "files-watcher": "files-watcher_14", |
8427 | "openarc": "openarc_14", | 8514 | "openarc": "openarc_14", |
8428 | "secrets": "secrets_22" | 8515 | "secrets": "secrets_25" |
8429 | }, | 8516 | }, |
8430 | "locked": { | 8517 | "locked": { |
8431 | "lastModified": 1, | 8518 | "lastModified": 1, |
@@ -8440,10 +8527,10 @@ | |||
8440 | }, | 8527 | }, |
8441 | "s-private-opendmarc": { | 8528 | "s-private-opendmarc": { |
8442 | "inputs": { | 8529 | "inputs": { |
8443 | "environment": "environment_30", | 8530 | "environment": "environment_33", |
8444 | "files-watcher": "files-watcher_15", | 8531 | "files-watcher": "files-watcher_15", |
8445 | "opendmarc": "opendmarc_7", | 8532 | "opendmarc": "opendmarc_7", |
8446 | "secrets": "secrets_23" | 8533 | "secrets": "secrets_26" |
8447 | }, | 8534 | }, |
8448 | "locked": { | 8535 | "locked": { |
8449 | "lastModified": 1, | 8536 | "lastModified": 1, |
@@ -8503,8 +8590,8 @@ | |||
8503 | }, | 8590 | }, |
8504 | "s-private-ssh": { | 8591 | "s-private-ssh": { |
8505 | "inputs": { | 8592 | "inputs": { |
8506 | "environment": "environment_31", | 8593 | "environment": "environment_34", |
8507 | "secrets": "secrets_24" | 8594 | "secrets": "secrets_27" |
8508 | }, | 8595 | }, |
8509 | "locked": { | 8596 | "locked": { |
8510 | "lastModified": 1, | 8597 | "lastModified": 1, |
@@ -8520,7 +8607,7 @@ | |||
8520 | "s-private-system": { | 8607 | "s-private-system": { |
8521 | "inputs": { | 8608 | "inputs": { |
8522 | "backports": "backports_7", | 8609 | "backports": "backports_7", |
8523 | "environment": "environment_32", | 8610 | "environment": "environment_35", |
8524 | "mypackages": "mypackages_12", | 8611 | "mypackages": "mypackages_12", |
8525 | "myuids": "myuids_42", | 8612 | "myuids": "myuids_42", |
8526 | "secrets-public": "secrets-public_7" | 8613 | "secrets-public": "secrets-public_7" |
@@ -8767,11 +8854,11 @@ | |||
8767 | "locked": { | 8854 | "locked": { |
8768 | "lastModified": 1, | 8855 | "lastModified": 1, |
8769 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8856 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8770 | "path": "../../flakes/secrets", | 8857 | "path": "../../secrets", |
8771 | "type": "path" | 8858 | "type": "path" |
8772 | }, | 8859 | }, |
8773 | "original": { | 8860 | "original": { |
8774 | "path": "../../flakes/secrets", | 8861 | "path": "../../secrets", |
8775 | "type": "path" | 8862 | "type": "path" |
8776 | } | 8863 | } |
8777 | }, | 8864 | }, |
@@ -8827,11 +8914,11 @@ | |||
8827 | "locked": { | 8914 | "locked": { |
8828 | "lastModified": 1, | 8915 | "lastModified": 1, |
8829 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8916 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8830 | "path": "../../secrets", | 8917 | "path": "../../flakes/secrets", |
8831 | "type": "path" | 8918 | "type": "path" |
8832 | }, | 8919 | }, |
8833 | "original": { | 8920 | "original": { |
8834 | "path": "../../secrets", | 8921 | "path": "../../flakes/secrets", |
8835 | "type": "path" | 8922 | "type": "path" |
8836 | } | 8923 | } |
8837 | }, | 8924 | }, |
@@ -8884,6 +8971,42 @@ | |||
8884 | } | 8971 | } |
8885 | }, | 8972 | }, |
8886 | "secrets_25": { | 8973 | "secrets_25": { |
8974 | "locked": { | ||
8975 | "lastModified": 1, | ||
8976 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
8977 | "path": "../../secrets", | ||
8978 | "type": "path" | ||
8979 | }, | ||
8980 | "original": { | ||
8981 | "path": "../../secrets", | ||
8982 | "type": "path" | ||
8983 | } | ||
8984 | }, | ||
8985 | "secrets_26": { | ||
8986 | "locked": { | ||
8987 | "lastModified": 1, | ||
8988 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
8989 | "path": "../../secrets", | ||
8990 | "type": "path" | ||
8991 | }, | ||
8992 | "original": { | ||
8993 | "path": "../../secrets", | ||
8994 | "type": "path" | ||
8995 | } | ||
8996 | }, | ||
8997 | "secrets_27": { | ||
8998 | "locked": { | ||
8999 | "lastModified": 1, | ||
9000 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
9001 | "path": "../../secrets", | ||
9002 | "type": "path" | ||
9003 | }, | ||
9004 | "original": { | ||
9005 | "path": "../../secrets", | ||
9006 | "type": "path" | ||
9007 | } | ||
9008 | }, | ||
9009 | "secrets_28": { | ||
8887 | "inputs": { | 9010 | "inputs": { |
8888 | "nixpkgs": "nixpkgs_106" | 9011 | "nixpkgs": "nixpkgs_106" |
8889 | }, | 9012 | }, |
@@ -8942,11 +9065,11 @@ | |||
8942 | "locked": { | 9065 | "locked": { |
8943 | "lastModified": 1, | 9066 | "lastModified": 1, |
8944 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 9067 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8945 | "path": "../../flakes/secrets", | 9068 | "path": "../../secrets", |
8946 | "type": "path" | 9069 | "type": "path" |
8947 | }, | 9070 | }, |
8948 | "original": { | 9071 | "original": { |
8949 | "path": "../../flakes/secrets", | 9072 | "path": "../../secrets", |
8950 | "type": "path" | 9073 | "type": "path" |
8951 | } | 9074 | } |
8952 | }, | 9075 | }, |
@@ -8954,11 +9077,11 @@ | |||
8954 | "locked": { | 9077 | "locked": { |
8955 | "lastModified": 1, | 9078 | "lastModified": 1, |
8956 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 9079 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8957 | "path": "../../secrets", | 9080 | "path": "../../flakes/secrets", |
8958 | "type": "path" | 9081 | "type": "path" |
8959 | }, | 9082 | }, |
8960 | "original": { | 9083 | "original": { |
8961 | "path": "../../secrets", | 9084 | "path": "../../flakes/secrets", |
8962 | "type": "path" | 9085 | "type": "path" |
8963 | } | 9086 | } |
8964 | }, | 9087 | }, |
@@ -8966,11 +9089,11 @@ | |||
8966 | "locked": { | 9089 | "locked": { |
8967 | "lastModified": 1, | 9090 | "lastModified": 1, |
8968 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 9091 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8969 | "path": "../../flakes/secrets", | 9092 | "path": "../../secrets", |
8970 | "type": "path" | 9093 | "type": "path" |
8971 | }, | 9094 | }, |
8972 | "original": { | 9095 | "original": { |
8973 | "path": "../../flakes/secrets", | 9096 | "path": "../../secrets", |
8974 | "type": "path" | 9097 | "type": "path" |
8975 | } | 9098 | } |
8976 | }, | 9099 | }, |
@@ -8978,11 +9101,11 @@ | |||
8978 | "locked": { | 9101 | "locked": { |
8979 | "lastModified": 1, | 9102 | "lastModified": 1, |
8980 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 9103 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8981 | "path": "../../secrets", | 9104 | "path": "../../flakes/secrets", |
8982 | "type": "path" | 9105 | "type": "path" |
8983 | }, | 9106 | }, |
8984 | "original": { | 9107 | "original": { |
8985 | "path": "../../secrets", | 9108 | "path": "../../flakes/secrets", |
8986 | "type": "path" | 9109 | "type": "path" |
8987 | } | 9110 | } |
8988 | }, | 9111 | }, |
@@ -9133,7 +9256,7 @@ | |||
9133 | "system": { | 9256 | "system": { |
9134 | "inputs": { | 9257 | "inputs": { |
9135 | "backports": "backports", | 9258 | "backports": "backports", |
9136 | "environment": "environment_7", | 9259 | "environment": "environment_8", |
9137 | "mypackages": "mypackages", | 9260 | "mypackages": "mypackages", |
9138 | "myuids": "myuids_6", | 9261 | "myuids": "myuids_6", |
9139 | "secrets-public": "secrets-public" | 9262 | "secrets-public": "secrets-public" |
@@ -9152,7 +9275,7 @@ | |||
9152 | "system_2": { | 9275 | "system_2": { |
9153 | "inputs": { | 9276 | "inputs": { |
9154 | "backports": "backports_2", | 9277 | "backports": "backports_2", |
9155 | "environment": "environment_10", | 9278 | "environment": "environment_11", |
9156 | "mypackages": "mypackages_2", | 9279 | "mypackages": "mypackages_2", |
9157 | "myuids": "myuids_8", | 9280 | "myuids": "myuids_8", |
9158 | "secrets-public": "secrets-public_2" | 9281 | "secrets-public": "secrets-public_2" |
@@ -9171,7 +9294,7 @@ | |||
9171 | "system_3": { | 9294 | "system_3": { |
9172 | "inputs": { | 9295 | "inputs": { |
9173 | "backports": "backports_4", | 9296 | "backports": "backports_4", |
9174 | "environment": "environment_21", | 9297 | "environment": "environment_23", |
9175 | "mypackages": "mypackages_7", | 9298 | "mypackages": "mypackages_7", |
9176 | "myuids": "myuids_24", | 9299 | "myuids": "myuids_24", |
9177 | "secrets-public": "secrets-public_4" | 9300 | "secrets-public": "secrets-public_4" |
@@ -9190,7 +9313,7 @@ | |||
9190 | "system_4": { | 9313 | "system_4": { |
9191 | "inputs": { | 9314 | "inputs": { |
9192 | "backports": "backports_5", | 9315 | "backports": "backports_5", |
9193 | "environment": "environment_24", | 9316 | "environment": "environment_26", |
9194 | "mypackages": "mypackages_8", | 9317 | "mypackages": "mypackages_8", |
9195 | "myuids": "myuids_27", | 9318 | "myuids": "myuids_27", |
9196 | "secrets-public": "secrets-public_5" | 9319 | "secrets-public": "secrets-public_5" |
@@ -112,6 +112,22 @@ | |||
112 | "type": "path" | 112 | "type": "path" |
113 | } | 113 | } |
114 | }, | 114 | }, |
115 | "borg-backup": { | ||
116 | "inputs": { | ||
117 | "environment": "environment", | ||
118 | "secrets": "secrets" | ||
119 | }, | ||
120 | "locked": { | ||
121 | "lastModified": 1, | ||
122 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
123 | "path": "../../flakes/private/borg_backup", | ||
124 | "type": "path" | ||
125 | }, | ||
126 | "original": { | ||
127 | "path": "../../flakes/private/borg_backup", | ||
128 | "type": "path" | ||
129 | } | ||
130 | }, | ||
115 | "buildslist": { | 131 | "buildslist": { |
116 | "flake": false, | 132 | "flake": false, |
117 | "locked": { | 133 | "locked": { |
@@ -146,7 +162,7 @@ | |||
146 | }, | 162 | }, |
147 | "chatons": { | 163 | "chatons": { |
148 | "inputs": { | 164 | "inputs": { |
149 | "environment": "environment" | 165 | "environment": "environment_2" |
150 | }, | 166 | }, |
151 | "locked": { | 167 | "locked": { |
152 | "lastModified": 1, | 168 | "lastModified": 1, |
@@ -161,7 +177,7 @@ | |||
161 | }, | 177 | }, |
162 | "chatons_2": { | 178 | "chatons_2": { |
163 | "inputs": { | 179 | "inputs": { |
164 | "environment": "environment_17" | 180 | "environment": "environment_19" |
165 | }, | 181 | }, |
166 | "locked": { | 182 | "locked": { |
167 | "lastModified": 1, | 183 | "lastModified": 1, |
@@ -674,11 +690,11 @@ | |||
674 | "locked": { | 690 | "locked": { |
675 | "lastModified": 1, | 691 | "lastModified": 1, |
676 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 692 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
677 | "path": "../../flakes/private/environment", | 693 | "path": "../environment", |
678 | "type": "path" | 694 | "type": "path" |
679 | }, | 695 | }, |
680 | "original": { | 696 | "original": { |
681 | "path": "../../flakes/private/environment", | 697 | "path": "../environment", |
682 | "type": "path" | 698 | "type": "path" |
683 | } | 699 | } |
684 | }, | 700 | }, |
@@ -698,11 +714,11 @@ | |||
698 | "locked": { | 714 | "locked": { |
699 | "lastModified": 1, | 715 | "lastModified": 1, |
700 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 716 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
701 | "path": "../../flakes/private/environment", | 717 | "path": "../environment", |
702 | "type": "path" | 718 | "type": "path" |
703 | }, | 719 | }, |
704 | "original": { | 720 | "original": { |
705 | "path": "../../flakes/private/environment", | 721 | "path": "../environment", |
706 | "type": "path" | 722 | "type": "path" |
707 | } | 723 | } |
708 | }, | 724 | }, |
@@ -710,11 +726,11 @@ | |||
710 | "locked": { | 726 | "locked": { |
711 | "lastModified": 1, | 727 | "lastModified": 1, |
712 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 728 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
713 | "path": "../environment", | 729 | "path": "../../flakes/private/environment", |
714 | "type": "path" | 730 | "type": "path" |
715 | }, | 731 | }, |
716 | "original": { | 732 | "original": { |
717 | "path": "../environment", | 733 | "path": "../../flakes/private/environment", |
718 | "type": "path" | 734 | "type": "path" |
719 | } | 735 | } |
720 | }, | 736 | }, |
@@ -734,11 +750,11 @@ | |||
734 | "locked": { | 750 | "locked": { |
735 | "lastModified": 1, | 751 | "lastModified": 1, |
736 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 752 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
737 | "path": "../../flakes/private/environment", | 753 | "path": "../environment", |
738 | "type": "path" | 754 | "type": "path" |
739 | }, | 755 | }, |
740 | "original": { | 756 | "original": { |
741 | "path": "../../flakes/private/environment", | 757 | "path": "../environment", |
742 | "type": "path" | 758 | "type": "path" |
743 | } | 759 | } |
744 | }, | 760 | }, |
@@ -758,11 +774,11 @@ | |||
758 | "locked": { | 774 | "locked": { |
759 | "lastModified": 1, | 775 | "lastModified": 1, |
760 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 776 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
761 | "path": "../environment", | 777 | "path": "../../flakes/private/environment", |
762 | "type": "path" | 778 | "type": "path" |
763 | }, | 779 | }, |
764 | "original": { | 780 | "original": { |
765 | "path": "../environment", | 781 | "path": "../../flakes/private/environment", |
766 | "type": "path" | 782 | "type": "path" |
767 | } | 783 | } |
768 | }, | 784 | }, |
@@ -830,11 +846,11 @@ | |||
830 | "locked": { | 846 | "locked": { |
831 | "lastModified": 1, | 847 | "lastModified": 1, |
832 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 848 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
833 | "path": "../environment", | 849 | "path": "../../flakes/private/environment", |
834 | "type": "path" | 850 | "type": "path" |
835 | }, | 851 | }, |
836 | "original": { | 852 | "original": { |
837 | "path": "../environment", | 853 | "path": "../../flakes/private/environment", |
838 | "type": "path" | 854 | "type": "path" |
839 | } | 855 | } |
840 | }, | 856 | }, |
@@ -874,6 +890,42 @@ | |||
874 | "type": "path" | 890 | "type": "path" |
875 | } | 891 | } |
876 | }, | 892 | }, |
893 | "environment_33": { | ||
894 | "locked": { | ||
895 | "lastModified": 1, | ||
896 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
897 | "path": "../environment", | ||
898 | "type": "path" | ||
899 | }, | ||
900 | "original": { | ||
901 | "path": "../environment", | ||
902 | "type": "path" | ||
903 | } | ||
904 | }, | ||
905 | "environment_34": { | ||
906 | "locked": { | ||
907 | "lastModified": 1, | ||
908 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
909 | "path": "../environment", | ||
910 | "type": "path" | ||
911 | }, | ||
912 | "original": { | ||
913 | "path": "../environment", | ||
914 | "type": "path" | ||
915 | } | ||
916 | }, | ||
917 | "environment_35": { | ||
918 | "locked": { | ||
919 | "lastModified": 1, | ||
920 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
921 | "path": "../environment", | ||
922 | "type": "path" | ||
923 | }, | ||
924 | "original": { | ||
925 | "path": "../environment", | ||
926 | "type": "path" | ||
927 | } | ||
928 | }, | ||
877 | "environment_4": { | 929 | "environment_4": { |
878 | "locked": { | 930 | "locked": { |
879 | "lastModified": 1, | 931 | "lastModified": 1, |
@@ -926,11 +978,11 @@ | |||
926 | "locked": { | 978 | "locked": { |
927 | "lastModified": 1, | 979 | "lastModified": 1, |
928 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 980 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
929 | "path": "../../flakes/private/environment", | 981 | "path": "../environment", |
930 | "type": "path" | 982 | "type": "path" |
931 | }, | 983 | }, |
932 | "original": { | 984 | "original": { |
933 | "path": "../../flakes/private/environment", | 985 | "path": "../environment", |
934 | "type": "path" | 986 | "type": "path" |
935 | } | 987 | } |
936 | }, | 988 | }, |
@@ -938,11 +990,11 @@ | |||
938 | "locked": { | 990 | "locked": { |
939 | "lastModified": 1, | 991 | "lastModified": 1, |
940 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 992 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
941 | "path": "../environment", | 993 | "path": "../../flakes/private/environment", |
942 | "type": "path" | 994 | "type": "path" |
943 | }, | 995 | }, |
944 | "original": { | 996 | "original": { |
945 | "path": "../environment", | 997 | "path": "../../flakes/private/environment", |
946 | "type": "path" | 998 | "type": "path" |
947 | } | 999 | } |
948 | }, | 1000 | }, |
@@ -2643,6 +2695,7 @@ | |||
2643 | "s-opendmarc": "s-opendmarc", | 2695 | "s-opendmarc": "s-opendmarc", |
2644 | "s-paste": "s-paste", | 2696 | "s-paste": "s-paste", |
2645 | "s-peertube": "s-peertube", | 2697 | "s-peertube": "s-peertube", |
2698 | "s-private-borg-backup": "s-private-borg-backup", | ||
2646 | "s-private-buildbot": "s-private-buildbot", | 2699 | "s-private-buildbot": "s-private-buildbot", |
2647 | "s-private-chatons": "s-private-chatons", | 2700 | "s-private-chatons": "s-private-chatons", |
2648 | "s-private-environment": "s-private-environment", | 2701 | "s-private-environment": "s-private-environment", |
@@ -2660,11 +2713,11 @@ | |||
2660 | "s-secrets": "s-secrets", | 2713 | "s-secrets": "s-secrets", |
2661 | "s-surfer": "s-surfer", | 2714 | "s-surfer": "s-surfer", |
2662 | "s-taskwarrior-web": "s-taskwarrior-web", | 2715 | "s-taskwarrior-web": "s-taskwarrior-web", |
2663 | "secrets": "secrets_25" | 2716 | "secrets": "secrets_28" |
2664 | }, | 2717 | }, |
2665 | "locked": { | 2718 | "locked": { |
2666 | "lastModified": 1, | 2719 | "lastModified": 1, |
2667 | "narHash": "sha256-bacTCDQeddb777/pYiLIhcSvxbc1WDQSXKqfTCJPzwo=", | 2720 | "narHash": "sha256-iTtXjTzGUwsQahHeiQfECPmHZ/orceFH54SimHgpBaA=", |
2668 | "path": "./flakes", | 2721 | "path": "./flakes", |
2669 | "type": "path" | 2722 | "type": "path" |
2670 | }, | 2723 | }, |
@@ -2778,8 +2831,8 @@ | |||
2778 | }, | 2831 | }, |
2779 | "mail-relay": { | 2832 | "mail-relay": { |
2780 | "inputs": { | 2833 | "inputs": { |
2781 | "environment": "environment_3", | 2834 | "environment": "environment_4", |
2782 | "secrets": "secrets" | 2835 | "secrets": "secrets_2" |
2783 | }, | 2836 | }, |
2784 | "locked": { | 2837 | "locked": { |
2785 | "lastModified": 1, | 2838 | "lastModified": 1, |
@@ -2794,8 +2847,8 @@ | |||
2794 | }, | 2847 | }, |
2795 | "mail-relay_2": { | 2848 | "mail-relay_2": { |
2796 | "inputs": { | 2849 | "inputs": { |
2797 | "environment": "environment_19", | 2850 | "environment": "environment_21", |
2798 | "secrets": "secrets_14" | 2851 | "secrets": "secrets_16" |
2799 | }, | 2852 | }, |
2800 | "locked": { | 2853 | "locked": { |
2801 | "lastModified": 1, | 2854 | "lastModified": 1, |
@@ -2884,11 +2937,11 @@ | |||
2884 | }, | 2937 | }, |
2885 | "milters": { | 2938 | "milters": { |
2886 | "inputs": { | 2939 | "inputs": { |
2887 | "environment": "environment_4", | 2940 | "environment": "environment_5", |
2888 | "files-watcher": "files-watcher", | 2941 | "files-watcher": "files-watcher", |
2889 | "openarc": "openarc", | 2942 | "openarc": "openarc", |
2890 | "opendmarc": "opendmarc", | 2943 | "opendmarc": "opendmarc", |
2891 | "secrets": "secrets_2" | 2944 | "secrets": "secrets_3" |
2892 | }, | 2945 | }, |
2893 | "locked": { | 2946 | "locked": { |
2894 | "lastModified": 1, | 2947 | "lastModified": 1, |
@@ -2903,10 +2956,10 @@ | |||
2903 | }, | 2956 | }, |
2904 | "monitoring": { | 2957 | "monitoring": { |
2905 | "inputs": { | 2958 | "inputs": { |
2906 | "environment": "environment_5", | 2959 | "environment": "environment_6", |
2907 | "naemon": "naemon", | 2960 | "naemon": "naemon", |
2908 | "nixpkgs-lib": "nixpkgs-lib_2", | 2961 | "nixpkgs-lib": "nixpkgs-lib_2", |
2909 | "secrets": "secrets_3" | 2962 | "secrets": "secrets_4" |
2910 | }, | 2963 | }, |
2911 | "locked": { | 2964 | "locked": { |
2912 | "lastModified": 1, | 2965 | "lastModified": 1, |
@@ -2921,10 +2974,10 @@ | |||
2921 | }, | 2974 | }, |
2922 | "monitoring_2": { | 2975 | "monitoring_2": { |
2923 | "inputs": { | 2976 | "inputs": { |
2924 | "environment": "environment_9", | 2977 | "environment": "environment_10", |
2925 | "naemon": "naemon_2", | 2978 | "naemon": "naemon_2", |
2926 | "nixpkgs-lib": "nixpkgs-lib_5", | 2979 | "nixpkgs-lib": "nixpkgs-lib_5", |
2927 | "secrets": "secrets_7" | 2980 | "secrets": "secrets_8" |
2928 | }, | 2981 | }, |
2929 | "locked": { | 2982 | "locked": { |
2930 | "lastModified": 1, | 2983 | "lastModified": 1, |
@@ -2939,10 +2992,10 @@ | |||
2939 | }, | 2992 | }, |
2940 | "monitoring_3": { | 2993 | "monitoring_3": { |
2941 | "inputs": { | 2994 | "inputs": { |
2942 | "environment": "environment_20", | 2995 | "environment": "environment_22", |
2943 | "naemon": "naemon_4", | 2996 | "naemon": "naemon_4", |
2944 | "nixpkgs-lib": "nixpkgs-lib_15", | 2997 | "nixpkgs-lib": "nixpkgs-lib_15", |
2945 | "secrets": "secrets_15" | 2998 | "secrets": "secrets_17" |
2946 | }, | 2999 | }, |
2947 | "locked": { | 3000 | "locked": { |
2948 | "lastModified": 1, | 3001 | "lastModified": 1, |
@@ -2957,10 +3010,10 @@ | |||
2957 | }, | 3010 | }, |
2958 | "monitoring_4": { | 3011 | "monitoring_4": { |
2959 | "inputs": { | 3012 | "inputs": { |
2960 | "environment": "environment_23", | 3013 | "environment": "environment_25", |
2961 | "naemon": "naemon_5", | 3014 | "naemon": "naemon_5", |
2962 | "nixpkgs-lib": "nixpkgs-lib_18", | 3015 | "nixpkgs-lib": "nixpkgs-lib_18", |
2963 | "secrets": "secrets_17" | 3016 | "secrets": "secrets_19" |
2964 | }, | 3017 | }, |
2965 | "locked": { | 3018 | "locked": { |
2966 | "lastModified": 1, | 3019 | "lastModified": 1, |
@@ -3830,8 +3883,9 @@ | |||
3830 | }, | 3883 | }, |
3831 | "n-backup-2": { | 3884 | "n-backup-2": { |
3832 | "inputs": { | 3885 | "inputs": { |
3886 | "borg-backup": "borg-backup", | ||
3833 | "chatons": "chatons", | 3887 | "chatons": "chatons", |
3834 | "environment": "environment_2", | 3888 | "environment": "environment_3", |
3835 | "loginctl-linger": "loginctl-linger", | 3889 | "loginctl-linger": "loginctl-linger", |
3836 | "mail-relay": "mail-relay", | 3890 | "mail-relay": "mail-relay", |
3837 | "milters": "milters", | 3891 | "milters": "milters", |
@@ -3843,12 +3897,12 @@ | |||
3843 | "opendmarc": "opendmarc_2", | 3897 | "opendmarc": "opendmarc_2", |
3844 | "openldap": "openldap", | 3898 | "openldap": "openldap", |
3845 | "rsync_backup": "rsync_backup", | 3899 | "rsync_backup": "rsync_backup", |
3846 | "secrets": "secrets_6", | 3900 | "secrets": "secrets_7", |
3847 | "system": "system" | 3901 | "system": "system" |
3848 | }, | 3902 | }, |
3849 | "locked": { | 3903 | "locked": { |
3850 | "lastModified": 1, | 3904 | "lastModified": 1, |
3851 | "narHash": "sha256-EPkvkGTy7RlhCXcngA/zGfXuiai7kE8YSL2siYe8HOI=", | 3905 | "narHash": "sha256-gnCoyp6EcUzjBhmNrPel4ZzhK2nK6VLBziYJkKiXcuU=", |
3852 | "path": "../systems/backup-2", | 3906 | "path": "../systems/backup-2", |
3853 | "type": "path" | 3907 | "type": "path" |
3854 | }, | 3908 | }, |
@@ -3859,14 +3913,14 @@ | |||
3859 | }, | 3913 | }, |
3860 | "n-dilion": { | 3914 | "n-dilion": { |
3861 | "inputs": { | 3915 | "inputs": { |
3862 | "environment": "environment_8", | 3916 | "environment": "environment_9", |
3863 | "files-watcher": "files-watcher_4", | 3917 | "files-watcher": "files-watcher_4", |
3864 | "loginctl-linger": "loginctl-linger_2", | 3918 | "loginctl-linger": "loginctl-linger_2", |
3865 | "monitoring": "monitoring_2", | 3919 | "monitoring": "monitoring_2", |
3866 | "my-lib": "my-lib_2", | 3920 | "my-lib": "my-lib_2", |
3867 | "myuids": "myuids_7", | 3921 | "myuids": "myuids_7", |
3868 | "nixpkgs": "nixpkgs_17", | 3922 | "nixpkgs": "nixpkgs_17", |
3869 | "secrets": "secrets_8", | 3923 | "secrets": "secrets_9", |
3870 | "system": "system_2" | 3924 | "system": "system_2" |
3871 | }, | 3925 | }, |
3872 | "locked": { | 3926 | "locked": { |
@@ -3885,6 +3939,7 @@ | |||
3885 | "dns-nix": "dns-nix", | 3939 | "dns-nix": "dns-nix", |
3886 | "my-lib": "my-lib_3", | 3940 | "my-lib": "my-lib_3", |
3887 | "nixpkgs": "nixpkgs_24", | 3941 | "nixpkgs": "nixpkgs_24", |
3942 | "private-borg-backup": "private-borg-backup", | ||
3888 | "private-buildbot": "private-buildbot", | 3943 | "private-buildbot": "private-buildbot", |
3889 | "private-chatons": "private-chatons", | 3944 | "private-chatons": "private-chatons", |
3890 | "private-environment": "private-environment", | 3945 | "private-environment": "private-environment", |
@@ -3919,7 +3974,7 @@ | |||
3919 | }, | 3974 | }, |
3920 | "locked": { | 3975 | "locked": { |
3921 | "lastModified": 1, | 3976 | "lastModified": 1, |
3922 | "narHash": "sha256-GP5n6/p0kgd0lf6KhPZqZxybcUPA38kl054Uo6CWYkE=", | 3977 | "narHash": "sha256-deESGvYrIO1Luc3tD+a+QGq5w8ZlzZrIkJa6baDWhXE=", |
3923 | "path": "../systems/eldiron", | 3978 | "path": "../systems/eldiron", |
3924 | "type": "path" | 3979 | "type": "path" |
3925 | }, | 3980 | }, |
@@ -3931,7 +3986,7 @@ | |||
3931 | "n-monitoring-1": { | 3986 | "n-monitoring-1": { |
3932 | "inputs": { | 3987 | "inputs": { |
3933 | "chatons": "chatons_2", | 3988 | "chatons": "chatons_2", |
3934 | "environment": "environment_18", | 3989 | "environment": "environment_20", |
3935 | "files-watcher": "files-watcher_9", | 3990 | "files-watcher": "files-watcher_9", |
3936 | "loginctl-linger": "loginctl-linger_3", | 3991 | "loginctl-linger": "loginctl-linger_3", |
3937 | "mail-relay": "mail-relay_2", | 3992 | "mail-relay": "mail-relay_2", |
@@ -3940,7 +3995,7 @@ | |||
3940 | "myuids": "myuids_23", | 3995 | "myuids": "myuids_23", |
3941 | "nixpkgs": "nixpkgs_55", | 3996 | "nixpkgs": "nixpkgs_55", |
3942 | "ports": "ports", | 3997 | "ports": "ports", |
3943 | "secrets": "secrets_16", | 3998 | "secrets": "secrets_18", |
3944 | "system": "system_3" | 3999 | "system": "system_3" |
3945 | }, | 4000 | }, |
3946 | "locked": { | 4001 | "locked": { |
@@ -3956,7 +4011,7 @@ | |||
3956 | }, | 4011 | }, |
3957 | "n-quatresaisons": { | 4012 | "n-quatresaisons": { |
3958 | "inputs": { | 4013 | "inputs": { |
3959 | "environment": "environment_22", | 4014 | "environment": "environment_24", |
3960 | "files-watcher": "files-watcher_10", | 4015 | "files-watcher": "files-watcher_10", |
3961 | "landing-page": "landing-page", | 4016 | "landing-page": "landing-page", |
3962 | "monitoring": "monitoring_4", | 4017 | "monitoring": "monitoring_4", |
@@ -3965,7 +4020,7 @@ | |||
3965 | "myuids": "myuids_26", | 4020 | "myuids": "myuids_26", |
3966 | "nixpkgs": "nixpkgs_63", | 4021 | "nixpkgs": "nixpkgs_63", |
3967 | "ports": "ports_2", | 4022 | "ports": "ports_2", |
3968 | "secrets": "secrets_18", | 4023 | "secrets": "secrets_20", |
3969 | "system": "system_4" | 4024 | "system": "system_4" |
3970 | }, | 4025 | }, |
3971 | "locked": { | 4026 | "locked": { |
@@ -7016,7 +7071,7 @@ | |||
7016 | "inputs": { | 7071 | "inputs": { |
7017 | "files-watcher": "files-watcher_2", | 7072 | "files-watcher": "files-watcher_2", |
7018 | "openarc": "openarc_4", | 7073 | "openarc": "openarc_4", |
7019 | "secrets": "secrets_4" | 7074 | "secrets": "secrets_5" |
7020 | }, | 7075 | }, |
7021 | "locked": { | 7076 | "locked": { |
7022 | "lastModified": 1, | 7077 | "lastModified": 1, |
@@ -7150,10 +7205,10 @@ | |||
7150 | }, | 7205 | }, |
7151 | "opendmarc_2": { | 7206 | "opendmarc_2": { |
7152 | "inputs": { | 7207 | "inputs": { |
7153 | "environment": "environment_6", | 7208 | "environment": "environment_7", |
7154 | "files-watcher": "files-watcher_3", | 7209 | "files-watcher": "files-watcher_3", |
7155 | "opendmarc": "opendmarc_3", | 7210 | "opendmarc": "opendmarc_3", |
7156 | "secrets": "secrets_5" | 7211 | "secrets": "secrets_6" |
7157 | }, | 7212 | }, |
7158 | "locked": { | 7213 | "locked": { |
7159 | "lastModified": 1, | 7214 | "lastModified": 1, |
@@ -7473,6 +7528,22 @@ | |||
7473 | "type": "path" | 7528 | "type": "path" |
7474 | } | 7529 | } |
7475 | }, | 7530 | }, |
7531 | "private-borg-backup": { | ||
7532 | "inputs": { | ||
7533 | "environment": "environment_12", | ||
7534 | "secrets": "secrets_10" | ||
7535 | }, | ||
7536 | "locked": { | ||
7537 | "lastModified": 1, | ||
7538 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
7539 | "path": "../../flakes/private/borg_backup", | ||
7540 | "type": "path" | ||
7541 | }, | ||
7542 | "original": { | ||
7543 | "path": "../../flakes/private/borg_backup", | ||
7544 | "type": "path" | ||
7545 | } | ||
7546 | }, | ||
7476 | "private-buildbot": { | 7547 | "private-buildbot": { |
7477 | "inputs": { | 7548 | "inputs": { |
7478 | "buildslist": "buildslist", | 7549 | "buildslist": "buildslist", |
@@ -7492,7 +7563,7 @@ | |||
7492 | }, | 7563 | }, |
7493 | "private-chatons": { | 7564 | "private-chatons": { |
7494 | "inputs": { | 7565 | "inputs": { |
7495 | "environment": "environment_11" | 7566 | "environment": "environment_13" |
7496 | }, | 7567 | }, |
7497 | "locked": { | 7568 | "locked": { |
7498 | "lastModified": 1, | 7569 | "lastModified": 1, |
@@ -7531,11 +7602,11 @@ | |||
7531 | }, | 7602 | }, |
7532 | "private-milters": { | 7603 | "private-milters": { |
7533 | "inputs": { | 7604 | "inputs": { |
7534 | "environment": "environment_12", | 7605 | "environment": "environment_14", |
7535 | "files-watcher": "files-watcher_5", | 7606 | "files-watcher": "files-watcher_5", |
7536 | "openarc": "openarc_6", | 7607 | "openarc": "openarc_6", |
7537 | "opendmarc": "opendmarc_4", | 7608 | "opendmarc": "opendmarc_4", |
7538 | "secrets": "secrets_9" | 7609 | "secrets": "secrets_11" |
7539 | }, | 7610 | }, |
7540 | "locked": { | 7611 | "locked": { |
7541 | "lastModified": 1, | 7612 | "lastModified": 1, |
@@ -7550,10 +7621,10 @@ | |||
7550 | }, | 7621 | }, |
7551 | "private-monitoring": { | 7622 | "private-monitoring": { |
7552 | "inputs": { | 7623 | "inputs": { |
7553 | "environment": "environment_13", | 7624 | "environment": "environment_15", |
7554 | "naemon": "naemon_3", | 7625 | "naemon": "naemon_3", |
7555 | "nixpkgs-lib": "nixpkgs-lib_9", | 7626 | "nixpkgs-lib": "nixpkgs-lib_9", |
7556 | "secrets": "secrets_10" | 7627 | "secrets": "secrets_12" |
7557 | }, | 7628 | }, |
7558 | "locked": { | 7629 | "locked": { |
7559 | "lastModified": 1, | 7630 | "lastModified": 1, |
@@ -7570,7 +7641,7 @@ | |||
7570 | "inputs": { | 7641 | "inputs": { |
7571 | "files-watcher": "files-watcher_6", | 7642 | "files-watcher": "files-watcher_6", |
7572 | "openarc": "openarc_8", | 7643 | "openarc": "openarc_8", |
7573 | "secrets": "secrets_11" | 7644 | "secrets": "secrets_13" |
7574 | }, | 7645 | }, |
7575 | "locked": { | 7646 | "locked": { |
7576 | "lastModified": 1, | 7647 | "lastModified": 1, |
@@ -7585,10 +7656,10 @@ | |||
7585 | }, | 7656 | }, |
7586 | "private-opendmarc": { | 7657 | "private-opendmarc": { |
7587 | "inputs": { | 7658 | "inputs": { |
7588 | "environment": "environment_14", | 7659 | "environment": "environment_16", |
7589 | "files-watcher": "files-watcher_7", | 7660 | "files-watcher": "files-watcher_7", |
7590 | "opendmarc": "opendmarc_5", | 7661 | "opendmarc": "opendmarc_5", |
7591 | "secrets": "secrets_12" | 7662 | "secrets": "secrets_14" |
7592 | }, | 7663 | }, |
7593 | "locked": { | 7664 | "locked": { |
7594 | "lastModified": 1, | 7665 | "lastModified": 1, |
@@ -7648,8 +7719,8 @@ | |||
7648 | }, | 7719 | }, |
7649 | "private-ssh": { | 7720 | "private-ssh": { |
7650 | "inputs": { | 7721 | "inputs": { |
7651 | "environment": "environment_15", | 7722 | "environment": "environment_17", |
7652 | "secrets": "secrets_13" | 7723 | "secrets": "secrets_15" |
7653 | }, | 7724 | }, |
7654 | "locked": { | 7725 | "locked": { |
7655 | "lastModified": 1, | 7726 | "lastModified": 1, |
@@ -7665,7 +7736,7 @@ | |||
7665 | "private-system": { | 7736 | "private-system": { |
7666 | "inputs": { | 7737 | "inputs": { |
7667 | "backports": "backports_3", | 7738 | "backports": "backports_3", |
7668 | "environment": "environment_16", | 7739 | "environment": "environment_18", |
7669 | "mypackages": "mypackages_3", | 7740 | "mypackages": "mypackages_3", |
7670 | "myuids": "myuids_15", | 7741 | "myuids": "myuids_15", |
7671 | "secrets-public": "secrets-public_3" | 7742 | "secrets-public": "secrets-public_3" |
@@ -7684,7 +7755,7 @@ | |||
7684 | "private-system_2": { | 7755 | "private-system_2": { |
7685 | "inputs": { | 7756 | "inputs": { |
7686 | "backports": "backports_6", | 7757 | "backports": "backports_6", |
7687 | "environment": "environment_25", | 7758 | "environment": "environment_27", |
7688 | "mypackages": "mypackages_9", | 7759 | "mypackages": "mypackages_9", |
7689 | "myuids": "myuids_28", | 7760 | "myuids": "myuids_28", |
7690 | "secrets-public": "secrets-public_6" | 7761 | "secrets-public": "secrets-public_6" |
@@ -8340,6 +8411,22 @@ | |||
8340 | "type": "path" | 8411 | "type": "path" |
8341 | } | 8412 | } |
8342 | }, | 8413 | }, |
8414 | "s-private-borg-backup": { | ||
8415 | "inputs": { | ||
8416 | "environment": "environment_28", | ||
8417 | "secrets": "secrets_21" | ||
8418 | }, | ||
8419 | "locked": { | ||
8420 | "lastModified": 1, | ||
8421 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
8422 | "path": "./private/borg_backup", | ||
8423 | "type": "path" | ||
8424 | }, | ||
8425 | "original": { | ||
8426 | "path": "./private/borg_backup", | ||
8427 | "type": "path" | ||
8428 | } | ||
8429 | }, | ||
8343 | "s-private-buildbot": { | 8430 | "s-private-buildbot": { |
8344 | "inputs": { | 8431 | "inputs": { |
8345 | "buildslist": "buildslist_2", | 8432 | "buildslist": "buildslist_2", |
@@ -8359,7 +8446,7 @@ | |||
8359 | }, | 8446 | }, |
8360 | "s-private-chatons": { | 8447 | "s-private-chatons": { |
8361 | "inputs": { | 8448 | "inputs": { |
8362 | "environment": "environment_26" | 8449 | "environment": "environment_29" |
8363 | }, | 8450 | }, |
8364 | "locked": { | 8451 | "locked": { |
8365 | "lastModified": 1, | 8452 | "lastModified": 1, |
@@ -8386,8 +8473,8 @@ | |||
8386 | }, | 8473 | }, |
8387 | "s-private-mail-relay": { | 8474 | "s-private-mail-relay": { |
8388 | "inputs": { | 8475 | "inputs": { |
8389 | "environment": "environment_27", | 8476 | "environment": "environment_30", |
8390 | "secrets": "secrets_19" | 8477 | "secrets": "secrets_22" |
8391 | }, | 8478 | }, |
8392 | "locked": { | 8479 | "locked": { |
8393 | "lastModified": 1, | 8480 | "lastModified": 1, |
@@ -8402,11 +8489,11 @@ | |||
8402 | }, | 8489 | }, |
8403 | "s-private-milters": { | 8490 | "s-private-milters": { |
8404 | "inputs": { | 8491 | "inputs": { |
8405 | "environment": "environment_28", | 8492 | "environment": "environment_31", |
8406 | "files-watcher": "files-watcher_13", | 8493 | "files-watcher": "files-watcher_13", |
8407 | "openarc": "openarc_12", | 8494 | "openarc": "openarc_12", |
8408 | "opendmarc": "opendmarc_6", | 8495 | "opendmarc": "opendmarc_6", |
8409 | "secrets": "secrets_20" | 8496 | "secrets": "secrets_23" |
8410 | }, | 8497 | }, |
8411 | "locked": { | 8498 | "locked": { |
8412 | "lastModified": 1, | 8499 | "lastModified": 1, |
@@ -8421,10 +8508,10 @@ | |||
8421 | }, | 8508 | }, |
8422 | "s-private-monitoring": { | 8509 | "s-private-monitoring": { |
8423 | "inputs": { | 8510 | "inputs": { |
8424 | "environment": "environment_29", | 8511 | "environment": "environment_32", |
8425 | "naemon": "naemon_6", | 8512 | "naemon": "naemon_6", |
8426 | "nixpkgs-lib": "nixpkgs-lib_27", | 8513 | "nixpkgs-lib": "nixpkgs-lib_27", |
8427 | "secrets": "secrets_21" | 8514 | "secrets": "secrets_24" |
8428 | }, | 8515 | }, |
8429 | "locked": { | 8516 | "locked": { |
8430 | "lastModified": 1, | 8517 | "lastModified": 1, |
@@ -8441,7 +8528,7 @@ | |||
8441 | "inputs": { | 8528 | "inputs": { |
8442 | "files-watcher": "files-watcher_14", | 8529 | "files-watcher": "files-watcher_14", |
8443 | "openarc": "openarc_14", | 8530 | "openarc": "openarc_14", |
8444 | "secrets": "secrets_22" | 8531 | "secrets": "secrets_25" |
8445 | }, | 8532 | }, |
8446 | "locked": { | 8533 | "locked": { |
8447 | "lastModified": 1, | 8534 | "lastModified": 1, |
@@ -8456,10 +8543,10 @@ | |||
8456 | }, | 8543 | }, |
8457 | "s-private-opendmarc": { | 8544 | "s-private-opendmarc": { |
8458 | "inputs": { | 8545 | "inputs": { |
8459 | "environment": "environment_30", | 8546 | "environment": "environment_33", |
8460 | "files-watcher": "files-watcher_15", | 8547 | "files-watcher": "files-watcher_15", |
8461 | "opendmarc": "opendmarc_7", | 8548 | "opendmarc": "opendmarc_7", |
8462 | "secrets": "secrets_23" | 8549 | "secrets": "secrets_26" |
8463 | }, | 8550 | }, |
8464 | "locked": { | 8551 | "locked": { |
8465 | "lastModified": 1, | 8552 | "lastModified": 1, |
@@ -8519,8 +8606,8 @@ | |||
8519 | }, | 8606 | }, |
8520 | "s-private-ssh": { | 8607 | "s-private-ssh": { |
8521 | "inputs": { | 8608 | "inputs": { |
8522 | "environment": "environment_31", | 8609 | "environment": "environment_34", |
8523 | "secrets": "secrets_24" | 8610 | "secrets": "secrets_27" |
8524 | }, | 8611 | }, |
8525 | "locked": { | 8612 | "locked": { |
8526 | "lastModified": 1, | 8613 | "lastModified": 1, |
@@ -8536,7 +8623,7 @@ | |||
8536 | "s-private-system": { | 8623 | "s-private-system": { |
8537 | "inputs": { | 8624 | "inputs": { |
8538 | "backports": "backports_7", | 8625 | "backports": "backports_7", |
8539 | "environment": "environment_32", | 8626 | "environment": "environment_35", |
8540 | "mypackages": "mypackages_12", | 8627 | "mypackages": "mypackages_12", |
8541 | "myuids": "myuids_42", | 8628 | "myuids": "myuids_42", |
8542 | "secrets-public": "secrets-public_7" | 8629 | "secrets-public": "secrets-public_7" |
@@ -8783,11 +8870,11 @@ | |||
8783 | "locked": { | 8870 | "locked": { |
8784 | "lastModified": 1, | 8871 | "lastModified": 1, |
8785 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8872 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8786 | "path": "../../flakes/secrets", | 8873 | "path": "../../secrets", |
8787 | "type": "path" | 8874 | "type": "path" |
8788 | }, | 8875 | }, |
8789 | "original": { | 8876 | "original": { |
8790 | "path": "../../flakes/secrets", | 8877 | "path": "../../secrets", |
8791 | "type": "path" | 8878 | "type": "path" |
8792 | } | 8879 | } |
8793 | }, | 8880 | }, |
@@ -8843,11 +8930,11 @@ | |||
8843 | "locked": { | 8930 | "locked": { |
8844 | "lastModified": 1, | 8931 | "lastModified": 1, |
8845 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8932 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8846 | "path": "../../secrets", | 8933 | "path": "../../flakes/secrets", |
8847 | "type": "path" | 8934 | "type": "path" |
8848 | }, | 8935 | }, |
8849 | "original": { | 8936 | "original": { |
8850 | "path": "../../secrets", | 8937 | "path": "../../flakes/secrets", |
8851 | "type": "path" | 8938 | "type": "path" |
8852 | } | 8939 | } |
8853 | }, | 8940 | }, |
@@ -8902,6 +8989,42 @@ | |||
8902 | "secrets_25": { | 8989 | "secrets_25": { |
8903 | "locked": { | 8990 | "locked": { |
8904 | "lastModified": 1, | 8991 | "lastModified": 1, |
8992 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
8993 | "path": "../../secrets", | ||
8994 | "type": "path" | ||
8995 | }, | ||
8996 | "original": { | ||
8997 | "path": "../../secrets", | ||
8998 | "type": "path" | ||
8999 | } | ||
9000 | }, | ||
9001 | "secrets_26": { | ||
9002 | "locked": { | ||
9003 | "lastModified": 1, | ||
9004 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
9005 | "path": "../../secrets", | ||
9006 | "type": "path" | ||
9007 | }, | ||
9008 | "original": { | ||
9009 | "path": "../../secrets", | ||
9010 | "type": "path" | ||
9011 | } | ||
9012 | }, | ||
9013 | "secrets_27": { | ||
9014 | "locked": { | ||
9015 | "lastModified": 1, | ||
9016 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
9017 | "path": "../../secrets", | ||
9018 | "type": "path" | ||
9019 | }, | ||
9020 | "original": { | ||
9021 | "path": "../../secrets", | ||
9022 | "type": "path" | ||
9023 | } | ||
9024 | }, | ||
9025 | "secrets_28": { | ||
9026 | "locked": { | ||
9027 | "lastModified": 1, | ||
8905 | "narHash": "sha256-yvhc2jxW1AQVmtrKPoYPr5DgpXKt/ua+ATuxvE3iY6c=", | 9028 | "narHash": "sha256-yvhc2jxW1AQVmtrKPoYPr5DgpXKt/ua+ATuxvE3iY6c=", |
8906 | "path": "./private/environment-dummy", | 9029 | "path": "./private/environment-dummy", |
8907 | "type": "path" | 9030 | "type": "path" |
@@ -8951,11 +9074,11 @@ | |||
8951 | "locked": { | 9074 | "locked": { |
8952 | "lastModified": 1, | 9075 | "lastModified": 1, |
8953 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 9076 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8954 | "path": "../../flakes/secrets", | 9077 | "path": "../../secrets", |
8955 | "type": "path" | 9078 | "type": "path" |
8956 | }, | 9079 | }, |
8957 | "original": { | 9080 | "original": { |
8958 | "path": "../../flakes/secrets", | 9081 | "path": "../../secrets", |
8959 | "type": "path" | 9082 | "type": "path" |
8960 | } | 9083 | } |
8961 | }, | 9084 | }, |
@@ -8963,11 +9086,11 @@ | |||
8963 | "locked": { | 9086 | "locked": { |
8964 | "lastModified": 1, | 9087 | "lastModified": 1, |
8965 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 9088 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8966 | "path": "../../secrets", | 9089 | "path": "../../flakes/secrets", |
8967 | "type": "path" | 9090 | "type": "path" |
8968 | }, | 9091 | }, |
8969 | "original": { | 9092 | "original": { |
8970 | "path": "../../secrets", | 9093 | "path": "../../flakes/secrets", |
8971 | "type": "path" | 9094 | "type": "path" |
8972 | } | 9095 | } |
8973 | }, | 9096 | }, |
@@ -8975,11 +9098,11 @@ | |||
8975 | "locked": { | 9098 | "locked": { |
8976 | "lastModified": 1, | 9099 | "lastModified": 1, |
8977 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 9100 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8978 | "path": "../../flakes/secrets", | 9101 | "path": "../../secrets", |
8979 | "type": "path" | 9102 | "type": "path" |
8980 | }, | 9103 | }, |
8981 | "original": { | 9104 | "original": { |
8982 | "path": "../../flakes/secrets", | 9105 | "path": "../../secrets", |
8983 | "type": "path" | 9106 | "type": "path" |
8984 | } | 9107 | } |
8985 | }, | 9108 | }, |
@@ -8987,11 +9110,11 @@ | |||
8987 | "locked": { | 9110 | "locked": { |
8988 | "lastModified": 1, | 9111 | "lastModified": 1, |
8989 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 9112 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8990 | "path": "../../secrets", | 9113 | "path": "../../flakes/secrets", |
8991 | "type": "path" | 9114 | "type": "path" |
8992 | }, | 9115 | }, |
8993 | "original": { | 9116 | "original": { |
8994 | "path": "../../secrets", | 9117 | "path": "../../flakes/secrets", |
8995 | "type": "path" | 9118 | "type": "path" |
8996 | } | 9119 | } |
8997 | }, | 9120 | }, |
@@ -9142,7 +9265,7 @@ | |||
9142 | "system": { | 9265 | "system": { |
9143 | "inputs": { | 9266 | "inputs": { |
9144 | "backports": "backports", | 9267 | "backports": "backports", |
9145 | "environment": "environment_7", | 9268 | "environment": "environment_8", |
9146 | "mypackages": "mypackages", | 9269 | "mypackages": "mypackages", |
9147 | "myuids": "myuids_6", | 9270 | "myuids": "myuids_6", |
9148 | "secrets-public": "secrets-public" | 9271 | "secrets-public": "secrets-public" |
@@ -9161,7 +9284,7 @@ | |||
9161 | "system_2": { | 9284 | "system_2": { |
9162 | "inputs": { | 9285 | "inputs": { |
9163 | "backports": "backports_2", | 9286 | "backports": "backports_2", |
9164 | "environment": "environment_10", | 9287 | "environment": "environment_11", |
9165 | "mypackages": "mypackages_2", | 9288 | "mypackages": "mypackages_2", |
9166 | "myuids": "myuids_8", | 9289 | "myuids": "myuids_8", |
9167 | "secrets-public": "secrets-public_2" | 9290 | "secrets-public": "secrets-public_2" |
@@ -9180,7 +9303,7 @@ | |||
9180 | "system_3": { | 9303 | "system_3": { |
9181 | "inputs": { | 9304 | "inputs": { |
9182 | "backports": "backports_4", | 9305 | "backports": "backports_4", |
9183 | "environment": "environment_21", | 9306 | "environment": "environment_23", |
9184 | "mypackages": "mypackages_7", | 9307 | "mypackages": "mypackages_7", |
9185 | "myuids": "myuids_24", | 9308 | "myuids": "myuids_24", |
9186 | "secrets-public": "secrets-public_4" | 9309 | "secrets-public": "secrets-public_4" |
@@ -9199,7 +9322,7 @@ | |||
9199 | "system_4": { | 9322 | "system_4": { |
9200 | "inputs": { | 9323 | "inputs": { |
9201 | "backports": "backports_5", | 9324 | "backports": "backports_5", |
9202 | "environment": "environment_24", | 9325 | "environment": "environment_26", |
9203 | "mypackages": "mypackages_8", | 9326 | "mypackages": "mypackages_8", |
9204 | "myuids": "myuids_27", | 9327 | "myuids": "myuids_27", |
9205 | "secrets-public": "secrets-public_5" | 9328 | "secrets-public": "secrets-public_5" |
diff --git a/flakes/flake.lock b/flakes/flake.lock index cbdd1a3..86fa845 100644 --- a/flakes/flake.lock +++ b/flakes/flake.lock | |||
@@ -112,6 +112,22 @@ | |||
112 | "type": "path" | 112 | "type": "path" |
113 | } | 113 | } |
114 | }, | 114 | }, |
115 | "borg-backup": { | ||
116 | "inputs": { | ||
117 | "environment": "environment", | ||
118 | "secrets": "secrets" | ||
119 | }, | ||
120 | "locked": { | ||
121 | "lastModified": 1, | ||
122 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
123 | "path": "../../flakes/private/borg_backup", | ||
124 | "type": "path" | ||
125 | }, | ||
126 | "original": { | ||
127 | "path": "../../flakes/private/borg_backup", | ||
128 | "type": "path" | ||
129 | } | ||
130 | }, | ||
115 | "buildslist": { | 131 | "buildslist": { |
116 | "flake": false, | 132 | "flake": false, |
117 | "locked": { | 133 | "locked": { |
@@ -146,7 +162,7 @@ | |||
146 | }, | 162 | }, |
147 | "chatons": { | 163 | "chatons": { |
148 | "inputs": { | 164 | "inputs": { |
149 | "environment": "environment" | 165 | "environment": "environment_2" |
150 | }, | 166 | }, |
151 | "locked": { | 167 | "locked": { |
152 | "lastModified": 1, | 168 | "lastModified": 1, |
@@ -161,7 +177,7 @@ | |||
161 | }, | 177 | }, |
162 | "chatons_2": { | 178 | "chatons_2": { |
163 | "inputs": { | 179 | "inputs": { |
164 | "environment": "environment_17" | 180 | "environment": "environment_19" |
165 | }, | 181 | }, |
166 | "locked": { | 182 | "locked": { |
167 | "lastModified": 1, | 183 | "lastModified": 1, |
@@ -654,11 +670,11 @@ | |||
654 | "locked": { | 670 | "locked": { |
655 | "lastModified": 1, | 671 | "lastModified": 1, |
656 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 672 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
657 | "path": "../../flakes/private/environment", | 673 | "path": "../environment", |
658 | "type": "path" | 674 | "type": "path" |
659 | }, | 675 | }, |
660 | "original": { | 676 | "original": { |
661 | "path": "../../flakes/private/environment", | 677 | "path": "../environment", |
662 | "type": "path" | 678 | "type": "path" |
663 | } | 679 | } |
664 | }, | 680 | }, |
@@ -678,11 +694,11 @@ | |||
678 | "locked": { | 694 | "locked": { |
679 | "lastModified": 1, | 695 | "lastModified": 1, |
680 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 696 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
681 | "path": "../../flakes/private/environment", | 697 | "path": "../environment", |
682 | "type": "path" | 698 | "type": "path" |
683 | }, | 699 | }, |
684 | "original": { | 700 | "original": { |
685 | "path": "../../flakes/private/environment", | 701 | "path": "../environment", |
686 | "type": "path" | 702 | "type": "path" |
687 | } | 703 | } |
688 | }, | 704 | }, |
@@ -690,11 +706,11 @@ | |||
690 | "locked": { | 706 | "locked": { |
691 | "lastModified": 1, | 707 | "lastModified": 1, |
692 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 708 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
693 | "path": "../environment", | 709 | "path": "../../flakes/private/environment", |
694 | "type": "path" | 710 | "type": "path" |
695 | }, | 711 | }, |
696 | "original": { | 712 | "original": { |
697 | "path": "../environment", | 713 | "path": "../../flakes/private/environment", |
698 | "type": "path" | 714 | "type": "path" |
699 | } | 715 | } |
700 | }, | 716 | }, |
@@ -714,11 +730,11 @@ | |||
714 | "locked": { | 730 | "locked": { |
715 | "lastModified": 1, | 731 | "lastModified": 1, |
716 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 732 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
717 | "path": "../../flakes/private/environment", | 733 | "path": "../environment", |
718 | "type": "path" | 734 | "type": "path" |
719 | }, | 735 | }, |
720 | "original": { | 736 | "original": { |
721 | "path": "../../flakes/private/environment", | 737 | "path": "../environment", |
722 | "type": "path" | 738 | "type": "path" |
723 | } | 739 | } |
724 | }, | 740 | }, |
@@ -738,11 +754,11 @@ | |||
738 | "locked": { | 754 | "locked": { |
739 | "lastModified": 1, | 755 | "lastModified": 1, |
740 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 756 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
741 | "path": "../environment", | 757 | "path": "../../flakes/private/environment", |
742 | "type": "path" | 758 | "type": "path" |
743 | }, | 759 | }, |
744 | "original": { | 760 | "original": { |
745 | "path": "../environment", | 761 | "path": "../../flakes/private/environment", |
746 | "type": "path" | 762 | "type": "path" |
747 | } | 763 | } |
748 | }, | 764 | }, |
@@ -810,11 +826,11 @@ | |||
810 | "locked": { | 826 | "locked": { |
811 | "lastModified": 1, | 827 | "lastModified": 1, |
812 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 828 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
813 | "path": "../environment", | 829 | "path": "../../flakes/private/environment", |
814 | "type": "path" | 830 | "type": "path" |
815 | }, | 831 | }, |
816 | "original": { | 832 | "original": { |
817 | "path": "../environment", | 833 | "path": "../../flakes/private/environment", |
818 | "type": "path" | 834 | "type": "path" |
819 | } | 835 | } |
820 | }, | 836 | }, |
@@ -854,6 +870,42 @@ | |||
854 | "type": "path" | 870 | "type": "path" |
855 | } | 871 | } |
856 | }, | 872 | }, |
873 | "environment_33": { | ||
874 | "locked": { | ||
875 | "lastModified": 1, | ||
876 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
877 | "path": "../environment", | ||
878 | "type": "path" | ||
879 | }, | ||
880 | "original": { | ||
881 | "path": "../environment", | ||
882 | "type": "path" | ||
883 | } | ||
884 | }, | ||
885 | "environment_34": { | ||
886 | "locked": { | ||
887 | "lastModified": 1, | ||
888 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
889 | "path": "../environment", | ||
890 | "type": "path" | ||
891 | }, | ||
892 | "original": { | ||
893 | "path": "../environment", | ||
894 | "type": "path" | ||
895 | } | ||
896 | }, | ||
897 | "environment_35": { | ||
898 | "locked": { | ||
899 | "lastModified": 1, | ||
900 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
901 | "path": "../environment", | ||
902 | "type": "path" | ||
903 | }, | ||
904 | "original": { | ||
905 | "path": "../environment", | ||
906 | "type": "path" | ||
907 | } | ||
908 | }, | ||
857 | "environment_4": { | 909 | "environment_4": { |
858 | "locked": { | 910 | "locked": { |
859 | "lastModified": 1, | 911 | "lastModified": 1, |
@@ -906,11 +958,11 @@ | |||
906 | "locked": { | 958 | "locked": { |
907 | "lastModified": 1, | 959 | "lastModified": 1, |
908 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 960 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
909 | "path": "../../flakes/private/environment", | 961 | "path": "../environment", |
910 | "type": "path" | 962 | "type": "path" |
911 | }, | 963 | }, |
912 | "original": { | 964 | "original": { |
913 | "path": "../../flakes/private/environment", | 965 | "path": "../environment", |
914 | "type": "path" | 966 | "type": "path" |
915 | } | 967 | } |
916 | }, | 968 | }, |
@@ -918,11 +970,11 @@ | |||
918 | "locked": { | 970 | "locked": { |
919 | "lastModified": 1, | 971 | "lastModified": 1, |
920 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 972 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
921 | "path": "../environment", | 973 | "path": "../../flakes/private/environment", |
922 | "type": "path" | 974 | "type": "path" |
923 | }, | 975 | }, |
924 | "original": { | 976 | "original": { |
925 | "path": "../environment", | 977 | "path": "../../flakes/private/environment", |
926 | "type": "path" | 978 | "type": "path" |
927 | } | 979 | } |
928 | }, | 980 | }, |
@@ -2683,8 +2735,8 @@ | |||
2683 | }, | 2735 | }, |
2684 | "mail-relay": { | 2736 | "mail-relay": { |
2685 | "inputs": { | 2737 | "inputs": { |
2686 | "environment": "environment_3", | 2738 | "environment": "environment_4", |
2687 | "secrets": "secrets" | 2739 | "secrets": "secrets_2" |
2688 | }, | 2740 | }, |
2689 | "locked": { | 2741 | "locked": { |
2690 | "lastModified": 1, | 2742 | "lastModified": 1, |
@@ -2699,8 +2751,8 @@ | |||
2699 | }, | 2751 | }, |
2700 | "mail-relay_2": { | 2752 | "mail-relay_2": { |
2701 | "inputs": { | 2753 | "inputs": { |
2702 | "environment": "environment_19", | 2754 | "environment": "environment_21", |
2703 | "secrets": "secrets_14" | 2755 | "secrets": "secrets_16" |
2704 | }, | 2756 | }, |
2705 | "locked": { | 2757 | "locked": { |
2706 | "lastModified": 1, | 2758 | "lastModified": 1, |
@@ -2789,11 +2841,11 @@ | |||
2789 | }, | 2841 | }, |
2790 | "milters": { | 2842 | "milters": { |
2791 | "inputs": { | 2843 | "inputs": { |
2792 | "environment": "environment_4", | 2844 | "environment": "environment_5", |
2793 | "files-watcher": "files-watcher", | 2845 | "files-watcher": "files-watcher", |
2794 | "openarc": "openarc", | 2846 | "openarc": "openarc", |
2795 | "opendmarc": "opendmarc", | 2847 | "opendmarc": "opendmarc", |
2796 | "secrets": "secrets_2" | 2848 | "secrets": "secrets_3" |
2797 | }, | 2849 | }, |
2798 | "locked": { | 2850 | "locked": { |
2799 | "lastModified": 1, | 2851 | "lastModified": 1, |
@@ -2808,10 +2860,10 @@ | |||
2808 | }, | 2860 | }, |
2809 | "monitoring": { | 2861 | "monitoring": { |
2810 | "inputs": { | 2862 | "inputs": { |
2811 | "environment": "environment_5", | 2863 | "environment": "environment_6", |
2812 | "naemon": "naemon", | 2864 | "naemon": "naemon", |
2813 | "nixpkgs-lib": "nixpkgs-lib", | 2865 | "nixpkgs-lib": "nixpkgs-lib", |
2814 | "secrets": "secrets_3" | 2866 | "secrets": "secrets_4" |
2815 | }, | 2867 | }, |
2816 | "locked": { | 2868 | "locked": { |
2817 | "lastModified": 1, | 2869 | "lastModified": 1, |
@@ -2826,10 +2878,10 @@ | |||
2826 | }, | 2878 | }, |
2827 | "monitoring_2": { | 2879 | "monitoring_2": { |
2828 | "inputs": { | 2880 | "inputs": { |
2829 | "environment": "environment_9", | 2881 | "environment": "environment_10", |
2830 | "naemon": "naemon_2", | 2882 | "naemon": "naemon_2", |
2831 | "nixpkgs-lib": "nixpkgs-lib_4", | 2883 | "nixpkgs-lib": "nixpkgs-lib_4", |
2832 | "secrets": "secrets_7" | 2884 | "secrets": "secrets_8" |
2833 | }, | 2885 | }, |
2834 | "locked": { | 2886 | "locked": { |
2835 | "lastModified": 1, | 2887 | "lastModified": 1, |
@@ -2844,10 +2896,10 @@ | |||
2844 | }, | 2896 | }, |
2845 | "monitoring_3": { | 2897 | "monitoring_3": { |
2846 | "inputs": { | 2898 | "inputs": { |
2847 | "environment": "environment_20", | 2899 | "environment": "environment_22", |
2848 | "naemon": "naemon_4", | 2900 | "naemon": "naemon_4", |
2849 | "nixpkgs-lib": "nixpkgs-lib_14", | 2901 | "nixpkgs-lib": "nixpkgs-lib_14", |
2850 | "secrets": "secrets_15" | 2902 | "secrets": "secrets_17" |
2851 | }, | 2903 | }, |
2852 | "locked": { | 2904 | "locked": { |
2853 | "lastModified": 1, | 2905 | "lastModified": 1, |
@@ -2862,10 +2914,10 @@ | |||
2862 | }, | 2914 | }, |
2863 | "monitoring_4": { | 2915 | "monitoring_4": { |
2864 | "inputs": { | 2916 | "inputs": { |
2865 | "environment": "environment_23", | 2917 | "environment": "environment_25", |
2866 | "naemon": "naemon_5", | 2918 | "naemon": "naemon_5", |
2867 | "nixpkgs-lib": "nixpkgs-lib_17", | 2919 | "nixpkgs-lib": "nixpkgs-lib_17", |
2868 | "secrets": "secrets_17" | 2920 | "secrets": "secrets_19" |
2869 | }, | 2921 | }, |
2870 | "locked": { | 2922 | "locked": { |
2871 | "lastModified": 1, | 2923 | "lastModified": 1, |
@@ -3735,8 +3787,9 @@ | |||
3735 | }, | 3787 | }, |
3736 | "n-backup-2": { | 3788 | "n-backup-2": { |
3737 | "inputs": { | 3789 | "inputs": { |
3790 | "borg-backup": "borg-backup", | ||
3738 | "chatons": "chatons", | 3791 | "chatons": "chatons", |
3739 | "environment": "environment_2", | 3792 | "environment": "environment_3", |
3740 | "loginctl-linger": "loginctl-linger", | 3793 | "loginctl-linger": "loginctl-linger", |
3741 | "mail-relay": "mail-relay", | 3794 | "mail-relay": "mail-relay", |
3742 | "milters": "milters", | 3795 | "milters": "milters", |
@@ -3748,12 +3801,12 @@ | |||
3748 | "opendmarc": "opendmarc_2", | 3801 | "opendmarc": "opendmarc_2", |
3749 | "openldap": "openldap", | 3802 | "openldap": "openldap", |
3750 | "rsync_backup": "rsync_backup", | 3803 | "rsync_backup": "rsync_backup", |
3751 | "secrets": "secrets_6", | 3804 | "secrets": "secrets_7", |
3752 | "system": "system" | 3805 | "system": "system" |
3753 | }, | 3806 | }, |
3754 | "locked": { | 3807 | "locked": { |
3755 | "lastModified": 1, | 3808 | "lastModified": 1, |
3756 | "narHash": "sha256-EPkvkGTy7RlhCXcngA/zGfXuiai7kE8YSL2siYe8HOI=", | 3809 | "narHash": "sha256-gnCoyp6EcUzjBhmNrPel4ZzhK2nK6VLBziYJkKiXcuU=", |
3757 | "path": "../systems/backup-2", | 3810 | "path": "../systems/backup-2", |
3758 | "type": "path" | 3811 | "type": "path" |
3759 | }, | 3812 | }, |
@@ -3764,14 +3817,14 @@ | |||
3764 | }, | 3817 | }, |
3765 | "n-dilion": { | 3818 | "n-dilion": { |
3766 | "inputs": { | 3819 | "inputs": { |
3767 | "environment": "environment_8", | 3820 | "environment": "environment_9", |
3768 | "files-watcher": "files-watcher_4", | 3821 | "files-watcher": "files-watcher_4", |
3769 | "loginctl-linger": "loginctl-linger_2", | 3822 | "loginctl-linger": "loginctl-linger_2", |
3770 | "monitoring": "monitoring_2", | 3823 | "monitoring": "monitoring_2", |
3771 | "my-lib": "my-lib_2", | 3824 | "my-lib": "my-lib_2", |
3772 | "myuids": "myuids_7", | 3825 | "myuids": "myuids_7", |
3773 | "nixpkgs": "nixpkgs_16", | 3826 | "nixpkgs": "nixpkgs_16", |
3774 | "secrets": "secrets_8", | 3827 | "secrets": "secrets_9", |
3775 | "system": "system_2" | 3828 | "system": "system_2" |
3776 | }, | 3829 | }, |
3777 | "locked": { | 3830 | "locked": { |
@@ -3790,6 +3843,7 @@ | |||
3790 | "dns-nix": "dns-nix", | 3843 | "dns-nix": "dns-nix", |
3791 | "my-lib": "my-lib_3", | 3844 | "my-lib": "my-lib_3", |
3792 | "nixpkgs": "nixpkgs_23", | 3845 | "nixpkgs": "nixpkgs_23", |
3846 | "private-borg-backup": "private-borg-backup", | ||
3793 | "private-buildbot": "private-buildbot", | 3847 | "private-buildbot": "private-buildbot", |
3794 | "private-chatons": "private-chatons", | 3848 | "private-chatons": "private-chatons", |
3795 | "private-environment": "private-environment", | 3849 | "private-environment": "private-environment", |
@@ -3824,7 +3878,7 @@ | |||
3824 | }, | 3878 | }, |
3825 | "locked": { | 3879 | "locked": { |
3826 | "lastModified": 1, | 3880 | "lastModified": 1, |
3827 | "narHash": "sha256-GP5n6/p0kgd0lf6KhPZqZxybcUPA38kl054Uo6CWYkE=", | 3881 | "narHash": "sha256-deESGvYrIO1Luc3tD+a+QGq5w8ZlzZrIkJa6baDWhXE=", |
3828 | "path": "../systems/eldiron", | 3882 | "path": "../systems/eldiron", |
3829 | "type": "path" | 3883 | "type": "path" |
3830 | }, | 3884 | }, |
@@ -3836,7 +3890,7 @@ | |||
3836 | "n-monitoring-1": { | 3890 | "n-monitoring-1": { |
3837 | "inputs": { | 3891 | "inputs": { |
3838 | "chatons": "chatons_2", | 3892 | "chatons": "chatons_2", |
3839 | "environment": "environment_18", | 3893 | "environment": "environment_20", |
3840 | "files-watcher": "files-watcher_9", | 3894 | "files-watcher": "files-watcher_9", |
3841 | "loginctl-linger": "loginctl-linger_3", | 3895 | "loginctl-linger": "loginctl-linger_3", |
3842 | "mail-relay": "mail-relay_2", | 3896 | "mail-relay": "mail-relay_2", |
@@ -3845,7 +3899,7 @@ | |||
3845 | "myuids": "myuids_23", | 3899 | "myuids": "myuids_23", |
3846 | "nixpkgs": "nixpkgs_54", | 3900 | "nixpkgs": "nixpkgs_54", |
3847 | "ports": "ports", | 3901 | "ports": "ports", |
3848 | "secrets": "secrets_16", | 3902 | "secrets": "secrets_18", |
3849 | "system": "system_3" | 3903 | "system": "system_3" |
3850 | }, | 3904 | }, |
3851 | "locked": { | 3905 | "locked": { |
@@ -3861,7 +3915,7 @@ | |||
3861 | }, | 3915 | }, |
3862 | "n-quatresaisons": { | 3916 | "n-quatresaisons": { |
3863 | "inputs": { | 3917 | "inputs": { |
3864 | "environment": "environment_22", | 3918 | "environment": "environment_24", |
3865 | "files-watcher": "files-watcher_10", | 3919 | "files-watcher": "files-watcher_10", |
3866 | "landing-page": "landing-page", | 3920 | "landing-page": "landing-page", |
3867 | "monitoring": "monitoring_4", | 3921 | "monitoring": "monitoring_4", |
@@ -3870,7 +3924,7 @@ | |||
3870 | "myuids": "myuids_26", | 3924 | "myuids": "myuids_26", |
3871 | "nixpkgs": "nixpkgs_62", | 3925 | "nixpkgs": "nixpkgs_62", |
3872 | "ports": "ports_2", | 3926 | "ports": "ports_2", |
3873 | "secrets": "secrets_18", | 3927 | "secrets": "secrets_20", |
3874 | "system": "system_4" | 3928 | "system": "system_4" |
3875 | }, | 3929 | }, |
3876 | "locked": { | 3930 | "locked": { |
@@ -6843,7 +6897,7 @@ | |||
6843 | "inputs": { | 6897 | "inputs": { |
6844 | "files-watcher": "files-watcher_2", | 6898 | "files-watcher": "files-watcher_2", |
6845 | "openarc": "openarc_4", | 6899 | "openarc": "openarc_4", |
6846 | "secrets": "secrets_4" | 6900 | "secrets": "secrets_5" |
6847 | }, | 6901 | }, |
6848 | "locked": { | 6902 | "locked": { |
6849 | "lastModified": 1, | 6903 | "lastModified": 1, |
@@ -6977,10 +7031,10 @@ | |||
6977 | }, | 7031 | }, |
6978 | "opendmarc_2": { | 7032 | "opendmarc_2": { |
6979 | "inputs": { | 7033 | "inputs": { |
6980 | "environment": "environment_6", | 7034 | "environment": "environment_7", |
6981 | "files-watcher": "files-watcher_3", | 7035 | "files-watcher": "files-watcher_3", |
6982 | "opendmarc": "opendmarc_3", | 7036 | "opendmarc": "opendmarc_3", |
6983 | "secrets": "secrets_5" | 7037 | "secrets": "secrets_6" |
6984 | }, | 7038 | }, |
6985 | "locked": { | 7039 | "locked": { |
6986 | "lastModified": 1, | 7040 | "lastModified": 1, |
@@ -7300,6 +7354,22 @@ | |||
7300 | "type": "path" | 7354 | "type": "path" |
7301 | } | 7355 | } |
7302 | }, | 7356 | }, |
7357 | "private-borg-backup": { | ||
7358 | "inputs": { | ||
7359 | "environment": "environment_12", | ||
7360 | "secrets": "secrets_10" | ||
7361 | }, | ||
7362 | "locked": { | ||
7363 | "lastModified": 1, | ||
7364 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
7365 | "path": "../../flakes/private/borg_backup", | ||
7366 | "type": "path" | ||
7367 | }, | ||
7368 | "original": { | ||
7369 | "path": "../../flakes/private/borg_backup", | ||
7370 | "type": "path" | ||
7371 | } | ||
7372 | }, | ||
7303 | "private-buildbot": { | 7373 | "private-buildbot": { |
7304 | "inputs": { | 7374 | "inputs": { |
7305 | "buildslist": "buildslist", | 7375 | "buildslist": "buildslist", |
@@ -7319,7 +7389,7 @@ | |||
7319 | }, | 7389 | }, |
7320 | "private-chatons": { | 7390 | "private-chatons": { |
7321 | "inputs": { | 7391 | "inputs": { |
7322 | "environment": "environment_11" | 7392 | "environment": "environment_13" |
7323 | }, | 7393 | }, |
7324 | "locked": { | 7394 | "locked": { |
7325 | "lastModified": 1, | 7395 | "lastModified": 1, |
@@ -7358,11 +7428,11 @@ | |||
7358 | }, | 7428 | }, |
7359 | "private-milters": { | 7429 | "private-milters": { |
7360 | "inputs": { | 7430 | "inputs": { |
7361 | "environment": "environment_12", | 7431 | "environment": "environment_14", |
7362 | "files-watcher": "files-watcher_5", | 7432 | "files-watcher": "files-watcher_5", |
7363 | "openarc": "openarc_6", | 7433 | "openarc": "openarc_6", |
7364 | "opendmarc": "opendmarc_4", | 7434 | "opendmarc": "opendmarc_4", |
7365 | "secrets": "secrets_9" | 7435 | "secrets": "secrets_11" |
7366 | }, | 7436 | }, |
7367 | "locked": { | 7437 | "locked": { |
7368 | "lastModified": 1, | 7438 | "lastModified": 1, |
@@ -7377,10 +7447,10 @@ | |||
7377 | }, | 7447 | }, |
7378 | "private-monitoring": { | 7448 | "private-monitoring": { |
7379 | "inputs": { | 7449 | "inputs": { |
7380 | "environment": "environment_13", | 7450 | "environment": "environment_15", |
7381 | "naemon": "naemon_3", | 7451 | "naemon": "naemon_3", |
7382 | "nixpkgs-lib": "nixpkgs-lib_8", | 7452 | "nixpkgs-lib": "nixpkgs-lib_8", |
7383 | "secrets": "secrets_10" | 7453 | "secrets": "secrets_12" |
7384 | }, | 7454 | }, |
7385 | "locked": { | 7455 | "locked": { |
7386 | "lastModified": 1, | 7456 | "lastModified": 1, |
@@ -7397,7 +7467,7 @@ | |||
7397 | "inputs": { | 7467 | "inputs": { |
7398 | "files-watcher": "files-watcher_6", | 7468 | "files-watcher": "files-watcher_6", |
7399 | "openarc": "openarc_8", | 7469 | "openarc": "openarc_8", |
7400 | "secrets": "secrets_11" | 7470 | "secrets": "secrets_13" |
7401 | }, | 7471 | }, |
7402 | "locked": { | 7472 | "locked": { |
7403 | "lastModified": 1, | 7473 | "lastModified": 1, |
@@ -7412,10 +7482,10 @@ | |||
7412 | }, | 7482 | }, |
7413 | "private-opendmarc": { | 7483 | "private-opendmarc": { |
7414 | "inputs": { | 7484 | "inputs": { |
7415 | "environment": "environment_14", | 7485 | "environment": "environment_16", |
7416 | "files-watcher": "files-watcher_7", | 7486 | "files-watcher": "files-watcher_7", |
7417 | "opendmarc": "opendmarc_5", | 7487 | "opendmarc": "opendmarc_5", |
7418 | "secrets": "secrets_12" | 7488 | "secrets": "secrets_14" |
7419 | }, | 7489 | }, |
7420 | "locked": { | 7490 | "locked": { |
7421 | "lastModified": 1, | 7491 | "lastModified": 1, |
@@ -7475,8 +7545,8 @@ | |||
7475 | }, | 7545 | }, |
7476 | "private-ssh": { | 7546 | "private-ssh": { |
7477 | "inputs": { | 7547 | "inputs": { |
7478 | "environment": "environment_15", | 7548 | "environment": "environment_17", |
7479 | "secrets": "secrets_13" | 7549 | "secrets": "secrets_15" |
7480 | }, | 7550 | }, |
7481 | "locked": { | 7551 | "locked": { |
7482 | "lastModified": 1, | 7552 | "lastModified": 1, |
@@ -7492,7 +7562,7 @@ | |||
7492 | "private-system": { | 7562 | "private-system": { |
7493 | "inputs": { | 7563 | "inputs": { |
7494 | "backports": "backports_3", | 7564 | "backports": "backports_3", |
7495 | "environment": "environment_16", | 7565 | "environment": "environment_18", |
7496 | "mypackages": "mypackages_3", | 7566 | "mypackages": "mypackages_3", |
7497 | "myuids": "myuids_15", | 7567 | "myuids": "myuids_15", |
7498 | "secrets-public": "secrets-public_3" | 7568 | "secrets-public": "secrets-public_3" |
@@ -7511,7 +7581,7 @@ | |||
7511 | "private-system_2": { | 7581 | "private-system_2": { |
7512 | "inputs": { | 7582 | "inputs": { |
7513 | "backports": "backports_6", | 7583 | "backports": "backports_6", |
7514 | "environment": "environment_25", | 7584 | "environment": "environment_27", |
7515 | "mypackages": "mypackages_9", | 7585 | "mypackages": "mypackages_9", |
7516 | "myuids": "myuids_28", | 7586 | "myuids": "myuids_28", |
7517 | "secrets-public": "secrets-public_6" | 7587 | "secrets-public": "secrets-public_6" |
@@ -7870,6 +7940,7 @@ | |||
7870 | "s-opendmarc": "s-opendmarc", | 7940 | "s-opendmarc": "s-opendmarc", |
7871 | "s-paste": "s-paste", | 7941 | "s-paste": "s-paste", |
7872 | "s-peertube": "s-peertube", | 7942 | "s-peertube": "s-peertube", |
7943 | "s-private-borg-backup": "s-private-borg-backup", | ||
7873 | "s-private-buildbot": "s-private-buildbot", | 7944 | "s-private-buildbot": "s-private-buildbot", |
7874 | "s-private-chatons": "s-private-chatons", | 7945 | "s-private-chatons": "s-private-chatons", |
7875 | "s-private-environment": "s-private-environment", | 7946 | "s-private-environment": "s-private-environment", |
@@ -7887,7 +7958,7 @@ | |||
7887 | "s-secrets": "s-secrets", | 7958 | "s-secrets": "s-secrets", |
7888 | "s-surfer": "s-surfer", | 7959 | "s-surfer": "s-surfer", |
7889 | "s-taskwarrior-web": "s-taskwarrior-web", | 7960 | "s-taskwarrior-web": "s-taskwarrior-web", |
7890 | "secrets": "secrets_25" | 7961 | "secrets": "secrets_28" |
7891 | } | 7962 | } |
7892 | }, | 7963 | }, |
7893 | "rsync_backup": { | 7964 | "rsync_backup": { |
@@ -8206,6 +8277,22 @@ | |||
8206 | "type": "path" | 8277 | "type": "path" |
8207 | } | 8278 | } |
8208 | }, | 8279 | }, |
8280 | "s-private-borg-backup": { | ||
8281 | "inputs": { | ||
8282 | "environment": "environment_28", | ||
8283 | "secrets": "secrets_21" | ||
8284 | }, | ||
8285 | "locked": { | ||
8286 | "lastModified": 1, | ||
8287 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
8288 | "path": "./private/borg_backup", | ||
8289 | "type": "path" | ||
8290 | }, | ||
8291 | "original": { | ||
8292 | "path": "./private/borg_backup", | ||
8293 | "type": "path" | ||
8294 | } | ||
8295 | }, | ||
8209 | "s-private-buildbot": { | 8296 | "s-private-buildbot": { |
8210 | "inputs": { | 8297 | "inputs": { |
8211 | "buildslist": "buildslist_2", | 8298 | "buildslist": "buildslist_2", |
@@ -8225,7 +8312,7 @@ | |||
8225 | }, | 8312 | }, |
8226 | "s-private-chatons": { | 8313 | "s-private-chatons": { |
8227 | "inputs": { | 8314 | "inputs": { |
8228 | "environment": "environment_26" | 8315 | "environment": "environment_29" |
8229 | }, | 8316 | }, |
8230 | "locked": { | 8317 | "locked": { |
8231 | "lastModified": 1, | 8318 | "lastModified": 1, |
@@ -8252,8 +8339,8 @@ | |||
8252 | }, | 8339 | }, |
8253 | "s-private-mail-relay": { | 8340 | "s-private-mail-relay": { |
8254 | "inputs": { | 8341 | "inputs": { |
8255 | "environment": "environment_27", | 8342 | "environment": "environment_30", |
8256 | "secrets": "secrets_19" | 8343 | "secrets": "secrets_22" |
8257 | }, | 8344 | }, |
8258 | "locked": { | 8345 | "locked": { |
8259 | "lastModified": 1, | 8346 | "lastModified": 1, |
@@ -8268,11 +8355,11 @@ | |||
8268 | }, | 8355 | }, |
8269 | "s-private-milters": { | 8356 | "s-private-milters": { |
8270 | "inputs": { | 8357 | "inputs": { |
8271 | "environment": "environment_28", | 8358 | "environment": "environment_31", |
8272 | "files-watcher": "files-watcher_13", | 8359 | "files-watcher": "files-watcher_13", |
8273 | "openarc": "openarc_12", | 8360 | "openarc": "openarc_12", |
8274 | "opendmarc": "opendmarc_6", | 8361 | "opendmarc": "opendmarc_6", |
8275 | "secrets": "secrets_20" | 8362 | "secrets": "secrets_23" |
8276 | }, | 8363 | }, |
8277 | "locked": { | 8364 | "locked": { |
8278 | "lastModified": 1, | 8365 | "lastModified": 1, |
@@ -8287,10 +8374,10 @@ | |||
8287 | }, | 8374 | }, |
8288 | "s-private-monitoring": { | 8375 | "s-private-monitoring": { |
8289 | "inputs": { | 8376 | "inputs": { |
8290 | "environment": "environment_29", | 8377 | "environment": "environment_32", |
8291 | "naemon": "naemon_6", | 8378 | "naemon": "naemon_6", |
8292 | "nixpkgs-lib": "nixpkgs-lib_26", | 8379 | "nixpkgs-lib": "nixpkgs-lib_26", |
8293 | "secrets": "secrets_21" | 8380 | "secrets": "secrets_24" |
8294 | }, | 8381 | }, |
8295 | "locked": { | 8382 | "locked": { |
8296 | "lastModified": 1, | 8383 | "lastModified": 1, |
@@ -8307,7 +8394,7 @@ | |||
8307 | "inputs": { | 8394 | "inputs": { |
8308 | "files-watcher": "files-watcher_14", | 8395 | "files-watcher": "files-watcher_14", |
8309 | "openarc": "openarc_14", | 8396 | "openarc": "openarc_14", |
8310 | "secrets": "secrets_22" | 8397 | "secrets": "secrets_25" |
8311 | }, | 8398 | }, |
8312 | "locked": { | 8399 | "locked": { |
8313 | "lastModified": 1, | 8400 | "lastModified": 1, |
@@ -8322,10 +8409,10 @@ | |||
8322 | }, | 8409 | }, |
8323 | "s-private-opendmarc": { | 8410 | "s-private-opendmarc": { |
8324 | "inputs": { | 8411 | "inputs": { |
8325 | "environment": "environment_30", | 8412 | "environment": "environment_33", |
8326 | "files-watcher": "files-watcher_15", | 8413 | "files-watcher": "files-watcher_15", |
8327 | "opendmarc": "opendmarc_7", | 8414 | "opendmarc": "opendmarc_7", |
8328 | "secrets": "secrets_23" | 8415 | "secrets": "secrets_26" |
8329 | }, | 8416 | }, |
8330 | "locked": { | 8417 | "locked": { |
8331 | "lastModified": 1, | 8418 | "lastModified": 1, |
@@ -8385,8 +8472,8 @@ | |||
8385 | }, | 8472 | }, |
8386 | "s-private-ssh": { | 8473 | "s-private-ssh": { |
8387 | "inputs": { | 8474 | "inputs": { |
8388 | "environment": "environment_31", | 8475 | "environment": "environment_34", |
8389 | "secrets": "secrets_24" | 8476 | "secrets": "secrets_27" |
8390 | }, | 8477 | }, |
8391 | "locked": { | 8478 | "locked": { |
8392 | "lastModified": 1, | 8479 | "lastModified": 1, |
@@ -8402,7 +8489,7 @@ | |||
8402 | "s-private-system": { | 8489 | "s-private-system": { |
8403 | "inputs": { | 8490 | "inputs": { |
8404 | "backports": "backports_7", | 8491 | "backports": "backports_7", |
8405 | "environment": "environment_32", | 8492 | "environment": "environment_35", |
8406 | "mypackages": "mypackages_12", | 8493 | "mypackages": "mypackages_12", |
8407 | "myuids": "myuids_42", | 8494 | "myuids": "myuids_42", |
8408 | "secrets-public": "secrets-public_7" | 8495 | "secrets-public": "secrets-public_7" |
@@ -8649,11 +8736,11 @@ | |||
8649 | "locked": { | 8736 | "locked": { |
8650 | "lastModified": 1, | 8737 | "lastModified": 1, |
8651 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8738 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8652 | "path": "../../flakes/secrets", | 8739 | "path": "../../secrets", |
8653 | "type": "path" | 8740 | "type": "path" |
8654 | }, | 8741 | }, |
8655 | "original": { | 8742 | "original": { |
8656 | "path": "../../flakes/secrets", | 8743 | "path": "../../secrets", |
8657 | "type": "path" | 8744 | "type": "path" |
8658 | } | 8745 | } |
8659 | }, | 8746 | }, |
@@ -8709,11 +8796,11 @@ | |||
8709 | "locked": { | 8796 | "locked": { |
8710 | "lastModified": 1, | 8797 | "lastModified": 1, |
8711 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8798 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8712 | "path": "../../secrets", | 8799 | "path": "../../flakes/secrets", |
8713 | "type": "path" | 8800 | "type": "path" |
8714 | }, | 8801 | }, |
8715 | "original": { | 8802 | "original": { |
8716 | "path": "../../secrets", | 8803 | "path": "../../flakes/secrets", |
8717 | "type": "path" | 8804 | "type": "path" |
8718 | } | 8805 | } |
8719 | }, | 8806 | }, |
@@ -8768,6 +8855,42 @@ | |||
8768 | "secrets_25": { | 8855 | "secrets_25": { |
8769 | "locked": { | 8856 | "locked": { |
8770 | "lastModified": 1, | 8857 | "lastModified": 1, |
8858 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
8859 | "path": "../../secrets", | ||
8860 | "type": "path" | ||
8861 | }, | ||
8862 | "original": { | ||
8863 | "path": "../../secrets", | ||
8864 | "type": "path" | ||
8865 | } | ||
8866 | }, | ||
8867 | "secrets_26": { | ||
8868 | "locked": { | ||
8869 | "lastModified": 1, | ||
8870 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
8871 | "path": "../../secrets", | ||
8872 | "type": "path" | ||
8873 | }, | ||
8874 | "original": { | ||
8875 | "path": "../../secrets", | ||
8876 | "type": "path" | ||
8877 | } | ||
8878 | }, | ||
8879 | "secrets_27": { | ||
8880 | "locked": { | ||
8881 | "lastModified": 1, | ||
8882 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
8883 | "path": "../../secrets", | ||
8884 | "type": "path" | ||
8885 | }, | ||
8886 | "original": { | ||
8887 | "path": "../../secrets", | ||
8888 | "type": "path" | ||
8889 | } | ||
8890 | }, | ||
8891 | "secrets_28": { | ||
8892 | "locked": { | ||
8893 | "lastModified": 1, | ||
8771 | "narHash": "sha256-yvhc2jxW1AQVmtrKPoYPr5DgpXKt/ua+ATuxvE3iY6c=", | 8894 | "narHash": "sha256-yvhc2jxW1AQVmtrKPoYPr5DgpXKt/ua+ATuxvE3iY6c=", |
8772 | "path": "./private/environment-dummy", | 8895 | "path": "./private/environment-dummy", |
8773 | "type": "path" | 8896 | "type": "path" |
@@ -8817,11 +8940,11 @@ | |||
8817 | "locked": { | 8940 | "locked": { |
8818 | "lastModified": 1, | 8941 | "lastModified": 1, |
8819 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8942 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8820 | "path": "../../flakes/secrets", | 8943 | "path": "../../secrets", |
8821 | "type": "path" | 8944 | "type": "path" |
8822 | }, | 8945 | }, |
8823 | "original": { | 8946 | "original": { |
8824 | "path": "../../flakes/secrets", | 8947 | "path": "../../secrets", |
8825 | "type": "path" | 8948 | "type": "path" |
8826 | } | 8949 | } |
8827 | }, | 8950 | }, |
@@ -8829,11 +8952,11 @@ | |||
8829 | "locked": { | 8952 | "locked": { |
8830 | "lastModified": 1, | 8953 | "lastModified": 1, |
8831 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8954 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8832 | "path": "../../secrets", | 8955 | "path": "../../flakes/secrets", |
8833 | "type": "path" | 8956 | "type": "path" |
8834 | }, | 8957 | }, |
8835 | "original": { | 8958 | "original": { |
8836 | "path": "../../secrets", | 8959 | "path": "../../flakes/secrets", |
8837 | "type": "path" | 8960 | "type": "path" |
8838 | } | 8961 | } |
8839 | }, | 8962 | }, |
@@ -8841,11 +8964,11 @@ | |||
8841 | "locked": { | 8964 | "locked": { |
8842 | "lastModified": 1, | 8965 | "lastModified": 1, |
8843 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8966 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8844 | "path": "../../flakes/secrets", | 8967 | "path": "../../secrets", |
8845 | "type": "path" | 8968 | "type": "path" |
8846 | }, | 8969 | }, |
8847 | "original": { | 8970 | "original": { |
8848 | "path": "../../flakes/secrets", | 8971 | "path": "../../secrets", |
8849 | "type": "path" | 8972 | "type": "path" |
8850 | } | 8973 | } |
8851 | }, | 8974 | }, |
@@ -8853,11 +8976,11 @@ | |||
8853 | "locked": { | 8976 | "locked": { |
8854 | "lastModified": 1, | 8977 | "lastModified": 1, |
8855 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 8978 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
8856 | "path": "../../secrets", | 8979 | "path": "../../flakes/secrets", |
8857 | "type": "path" | 8980 | "type": "path" |
8858 | }, | 8981 | }, |
8859 | "original": { | 8982 | "original": { |
8860 | "path": "../../secrets", | 8983 | "path": "../../flakes/secrets", |
8861 | "type": "path" | 8984 | "type": "path" |
8862 | } | 8985 | } |
8863 | }, | 8986 | }, |
@@ -9008,7 +9131,7 @@ | |||
9008 | "system": { | 9131 | "system": { |
9009 | "inputs": { | 9132 | "inputs": { |
9010 | "backports": "backports", | 9133 | "backports": "backports", |
9011 | "environment": "environment_7", | 9134 | "environment": "environment_8", |
9012 | "mypackages": "mypackages", | 9135 | "mypackages": "mypackages", |
9013 | "myuids": "myuids_6", | 9136 | "myuids": "myuids_6", |
9014 | "secrets-public": "secrets-public" | 9137 | "secrets-public": "secrets-public" |
@@ -9027,7 +9150,7 @@ | |||
9027 | "system_2": { | 9150 | "system_2": { |
9028 | "inputs": { | 9151 | "inputs": { |
9029 | "backports": "backports_2", | 9152 | "backports": "backports_2", |
9030 | "environment": "environment_10", | 9153 | "environment": "environment_11", |
9031 | "mypackages": "mypackages_2", | 9154 | "mypackages": "mypackages_2", |
9032 | "myuids": "myuids_8", | 9155 | "myuids": "myuids_8", |
9033 | "secrets-public": "secrets-public_2" | 9156 | "secrets-public": "secrets-public_2" |
@@ -9046,7 +9169,7 @@ | |||
9046 | "system_3": { | 9169 | "system_3": { |
9047 | "inputs": { | 9170 | "inputs": { |
9048 | "backports": "backports_4", | 9171 | "backports": "backports_4", |
9049 | "environment": "environment_21", | 9172 | "environment": "environment_23", |
9050 | "mypackages": "mypackages_7", | 9173 | "mypackages": "mypackages_7", |
9051 | "myuids": "myuids_24", | 9174 | "myuids": "myuids_24", |
9052 | "secrets-public": "secrets-public_4" | 9175 | "secrets-public": "secrets-public_4" |
@@ -9065,7 +9188,7 @@ | |||
9065 | "system_4": { | 9188 | "system_4": { |
9066 | "inputs": { | 9189 | "inputs": { |
9067 | "backports": "backports_5", | 9190 | "backports": "backports_5", |
9068 | "environment": "environment_24", | 9191 | "environment": "environment_26", |
9069 | "mypackages": "mypackages_8", | 9192 | "mypackages": "mypackages_8", |
9070 | "myuids": "myuids_27", | 9193 | "myuids": "myuids_27", |
9071 | "secrets-public": "secrets-public_5" | 9194 | "secrets-public": "secrets-public_5" |
diff --git a/flakes/flake.nix b/flakes/flake.nix index 95498de..2db031d 100644 --- a/flakes/flake.nix +++ b/flakes/flake.nix | |||
@@ -25,6 +25,7 @@ | |||
25 | s-surfer.url = "path:./surfer"; | 25 | s-surfer.url = "path:./surfer"; |
26 | s-taskwarrior-web.url = "path:./taskwarrior-web"; | 26 | s-taskwarrior-web.url = "path:./taskwarrior-web"; |
27 | 27 | ||
28 | s-private-borg-backup.url = "path:./private/borg_backup"; | ||
28 | s-private-buildbot.url = "path:./private/buildbot"; | 29 | s-private-buildbot.url = "path:./private/buildbot"; |
29 | s-private-chatons.url = "path:./private/chatons"; | 30 | s-private-chatons.url = "path:./private/chatons"; |
30 | s-private-environment.url = "path:./private/environment"; | 31 | s-private-environment.url = "path:./private/environment"; |
diff --git a/flakes/private/borg_backup/flake.lock b/flakes/private/borg_backup/flake.lock new file mode 100644 index 0000000..4d620ad --- /dev/null +++ b/flakes/private/borg_backup/flake.lock | |||
@@ -0,0 +1,36 @@ | |||
1 | { | ||
2 | "nodes": { | ||
3 | "environment": { | ||
4 | "locked": { | ||
5 | "lastModified": 1, | ||
6 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
7 | "path": "../environment", | ||
8 | "type": "path" | ||
9 | }, | ||
10 | "original": { | ||
11 | "path": "../environment", | ||
12 | "type": "path" | ||
13 | } | ||
14 | }, | ||
15 | "root": { | ||
16 | "inputs": { | ||
17 | "environment": "environment", | ||
18 | "secrets": "secrets" | ||
19 | } | ||
20 | }, | ||
21 | "secrets": { | ||
22 | "locked": { | ||
23 | "lastModified": 1, | ||
24 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
25 | "path": "../../secrets", | ||
26 | "type": "path" | ||
27 | }, | ||
28 | "original": { | ||
29 | "path": "../../secrets", | ||
30 | "type": "path" | ||
31 | } | ||
32 | } | ||
33 | }, | ||
34 | "root": "root", | ||
35 | "version": 7 | ||
36 | } | ||
diff --git a/flakes/private/borg_backup/flake.nix b/flakes/private/borg_backup/flake.nix new file mode 100644 index 0000000..ad7d6eb --- /dev/null +++ b/flakes/private/borg_backup/flake.nix | |||
@@ -0,0 +1,321 @@ | |||
1 | { | ||
2 | inputs.environment.url = "path:../environment"; | ||
3 | inputs.secrets.url = "path:../../secrets"; | ||
4 | |||
5 | outputs = { self, environment, secrets }: { | ||
6 | nixosModule = self.nixosModules.borgBackup; | ||
7 | nixosModules.borgBackup = { lib, pkgs, config, name, ... }: | ||
8 | let | ||
9 | cfg = config.myEnv.borg_backup; | ||
10 | varDir = "/var/lib/borgbackup"; | ||
11 | borg_args = "--encryption repokey --make-parent-dirs init create prune compact check"; | ||
12 | borg_backup_full_with_ignored = pkgs.writeScriptBin "borg_full_with_ignored" '' | ||
13 | #!${pkgs.stdenv.shell} | ||
14 | |||
15 | if [ -z "$1" -o "$1" = "-h" -o "$1" = "--help" ]; then | ||
16 | echo "borg_full_with_ignored /path/to/borgmatic.yaml" | ||
17 | echo "Does a full backup including directories with .duplicity-ignore" | ||
18 | exit 1 | ||
19 | fi | ||
20 | ${pkgs.borgmatic}/bin/borgmatic -c "$1" --override 'storage.archive_name_format="{hostname}-with-ignored-{now:%Y-%m-%dT%H:%M:%S.%f}"' --override 'location.exclude_if_present=[]' ${borg_args} | ||
21 | ''; | ||
22 | borg_backup = pkgs.writeScriptBin "borg_backup" '' | ||
23 | #!${pkgs.stdenv.shell} | ||
24 | |||
25 | declare -a profiles | ||
26 | profiles=() | ||
27 | ${builtins.concatStringsSep "\n" (lib.flatten (lib.mapAttrsToList (k: v: map (remote: [ | ||
28 | ''profiles+=("${remote}_${k}")'' | ||
29 | ]) v.remotes) config.services.borgBackup.profiles))} | ||
30 | |||
31 | if [ -f "${varDir}/last_backup_profile" ]; then | ||
32 | last_backup=$(cat ${varDir}/last_backup_profile) | ||
33 | for i in "''${!profiles[@]}"; do | ||
34 | if [[ "''${profiles[$i]}" = "$last_backup" ]]; then | ||
35 | break | ||
36 | fi | ||
37 | done | ||
38 | ((i+=1)) | ||
39 | profiles=("''${profiles[@]:$i}" "''${profiles[@]:0:$i}") | ||
40 | fi | ||
41 | |||
42 | # timeout in minutes | ||
43 | timeout="''${1:-180}" | ||
44 | timeout_timestamp=$(date +%s -d "$timeout minutes") | ||
45 | for profile in "''${profiles[@]}"; do | ||
46 | if [ $(date +%s -d "now") -ge "$timeout_timestamp" ]; then | ||
47 | break | ||
48 | fi | ||
49 | |||
50 | touch "${varDir}/$profile.log" | ||
51 | ${pkgs.borgmatic}/bin/borgmatic -c "${config.secrets.location}/borg_backup/$profile/borgmatic.yaml" ${borg_args} >> ${varDir}/$profile.log | ||
52 | [[ $? = 0 ]] || echo -e "Error when doing backup for $profile, see above or logs in ${varDir}/$profile.log\n---------------------------------------" >&2 | ||
53 | echo "$profile" > ${varDir}/last_backup_profile | ||
54 | done | ||
55 | ''; | ||
56 | |||
57 | check_mysql_backups = pkgs.writeScriptBin "borg_list_mysql_not_backuped" '' | ||
58 | #!${pkgs.stdenv.shell} | ||
59 | |||
60 | comm -13 <(cat ${config.secrets.fullPaths."borg_backup/backuped_mysql_list"} | sort) <(mysql --defaults-file=${config.secrets.fullPaths."mysql_replication/eldiron/client"} -N -s -S /run/mysqld_eldiron/mysqld.sock -e "show databases;" | sort) | ||
61 | ''; | ||
62 | check_psql_backups = pkgs.writeScriptBin "borg_list_psql_not_backuped" '' | ||
63 | #!${pkgs.stdenv.shell} | ||
64 | |||
65 | comm -13 <(cat ${config.secrets.fullPaths."borg_backup/backuped_psql_list"} | sort) <(sudo -u postgres psql -h /backup2/eldiron/postgresql -Atq -c "SELECT datname FROM pg_catalog.pg_database" | sort) | ||
66 | ''; | ||
67 | check_backups = pkgs.writeScriptBin "borg_list_not_backuped" '' | ||
68 | #!${pkgs.stdenv.shell} | ||
69 | |||
70 | do_check() { | ||
71 | local dir="$1" path ignored_path | ||
72 | find "$dir" -mindepth 1 -maxdepth 1 | while IFS= read -r path; do | ||
73 | if ${pkgs.gnugrep}/bin/grep -qFx "$path" ${config.secrets.fullPaths."borg_backup/backuped_list"}; then | ||
74 | continue | ||
75 | elif ${pkgs.gnugrep}/bin/grep -q "^$path/" ${config.secrets.fullPaths."borg_backup/backuped_list"}; then | ||
76 | do_check "$path" | ||
77 | else | ||
78 | while IFS= read -r ignored_path; do | ||
79 | if [[ "$path" =~ ^$ignored_path$ ]]; then | ||
80 | continue 2 | ||
81 | fi | ||
82 | done < ${config.secrets.fullPaths."borg_backup/ignored_list"} | ||
83 | printf '%s\n' "$path" | ||
84 | fi | ||
85 | done | ||
86 | } | ||
87 | |||
88 | do_check /var/lib | ||
89 | ''; | ||
90 | borgProfile = profile: remote: bucket: builtins.toJSON { | ||
91 | location = { | ||
92 | source_directories = map (p: "${profile.rootDir}/${p}") profile.includedPaths; | ||
93 | repositories = [ | ||
94 | { path = cfg.remotes.${remote}.remote name bucket; label = "backupserver"; } | ||
95 | ]; | ||
96 | one_file_system = false; | ||
97 | exclude_if_present = [".duplicity-ignore"]; | ||
98 | source_directories_must_exist = profile.directoriesMustExist; | ||
99 | borgmatic_source_directory = "${varDir}/${profile.bucket}/.borgmatic"; | ||
100 | }; | ||
101 | hooks = { | ||
102 | mysql_databases = profile.mariaDBDatabases; | ||
103 | postgresql_databases = profile.postgresqlDatabases; | ||
104 | before_backup = lib.optional (profile.postgresqlDatabasesPauseReplicationHost != null) "sudo -u postgres psql -h ${profile.postgresqlDatabasesPauseReplicationHost} -c 'SELECT pg_wal_replay_pause();' >/dev/null"; | ||
105 | after_backup = lib.optional (profile.postgresqlDatabasesPauseReplicationHost != null) "sudo -u postgres psql -h ${profile.postgresqlDatabasesPauseReplicationHost} -c 'SELECT pg_wal_replay_resume();' >/dev/null"; | ||
106 | }; | ||
107 | storage = { | ||
108 | encryption_passphrase = profile.password; | ||
109 | ssh_command = "ssh -i ${config.secrets.fullPaths."borg_backup/identity"}"; | ||
110 | compression = "zlib"; | ||
111 | borg_base_directory = "${varDir}/${profile.bucket}"; | ||
112 | relocated_repo_access_is_ok = true; | ||
113 | }; | ||
114 | retention = { | ||
115 | keep_within = "10d"; | ||
116 | keep_daily = 30; | ||
117 | }; | ||
118 | }; | ||
119 | in | ||
120 | { | ||
121 | imports = [ | ||
122 | environment.nixosModule | ||
123 | secrets.nixosModule | ||
124 | ]; | ||
125 | options = { | ||
126 | services.borgBackup.enable = lib.mkOption { | ||
127 | type = lib.types.bool; | ||
128 | default = false; | ||
129 | description = '' | ||
130 | Whether to enable remote backups. | ||
131 | ''; | ||
132 | }; | ||
133 | services.borgBackup.helpers = lib.mkOption { | ||
134 | readOnly = true; | ||
135 | description = '' | ||
136 | Some useful functions for borgBackup configuration | ||
137 | ''; | ||
138 | default = { | ||
139 | mysqlDBFromBackup = name: primary: { | ||
140 | inherit name; | ||
141 | options = "--defaults-file=${config.secrets.fullPaths."mysql_replication/${primary}/mysqldump"} -S /run/mysqld_${primary}/mysqld.sock"; | ||
142 | }; | ||
143 | psqlDBWithSocket = name: socket: { | ||
144 | inherit name; | ||
145 | # do not use "host" otherwise it screws the path computation: | ||
146 | # there’s a python code os.path.join(os.path.expanduser(dump_path), hostname or 'localhost', name) | ||
147 | # and the first argument gets ignored since the second one | ||
148 | # looks like an absolute path | ||
149 | options = "--host ${socket}"; | ||
150 | pg_dump_command = "sudo -u postgres pg_dump"; | ||
151 | psql_command = "sudo -u postgres psql"; | ||
152 | pg_restore_command = "sudo -u postgres pg_restore"; | ||
153 | }; | ||
154 | }; | ||
155 | }; | ||
156 | services.borgBackup.profiles = lib.mkOption { | ||
157 | type = lib.types.attrsOf (lib.types.submodule { | ||
158 | options = { | ||
159 | hash = lib.mkOption { | ||
160 | type = lib.types.bool; | ||
161 | default = true; | ||
162 | description = '' | ||
163 | Hash bucket and directory names | ||
164 | ''; | ||
165 | }; | ||
166 | rootDir = lib.mkOption { | ||
167 | type = lib.types.path; | ||
168 | default = "/var/lib"; | ||
169 | description = '' | ||
170 | Path to backup | ||
171 | ''; | ||
172 | }; | ||
173 | password = lib.mkOption { | ||
174 | type = lib.types.str; | ||
175 | default = cfg.password; | ||
176 | description = '' | ||
177 | password to use to encrypt data | ||
178 | ''; | ||
179 | }; | ||
180 | directoriesMustExist = lib.mkOption { | ||
181 | type = lib.types.bool; | ||
182 | default = true; | ||
183 | description = '' | ||
184 | Raise error if backuped directory doesn't exist | ||
185 | ''; | ||
186 | }; | ||
187 | bucket = lib.mkOption { | ||
188 | type = lib.types.str; | ||
189 | description = '' | ||
190 | Bucket to use | ||
191 | ''; | ||
192 | }; | ||
193 | remotes = lib.mkOption { | ||
194 | type = lib.types.listOf lib.types.str; | ||
195 | description = '' | ||
196 | Remotes to use for backup | ||
197 | ''; | ||
198 | }; | ||
199 | includedPaths = lib.mkOption { | ||
200 | type = lib.types.listOf lib.types.str; | ||
201 | default = []; | ||
202 | description = '' | ||
203 | Included paths (subdirs of rootDir) | ||
204 | ''; | ||
205 | }; | ||
206 | mariaDBDatabases = lib.mkOption { | ||
207 | type = lib.types.listOf (lib.types.attrsOf lib.types.str); | ||
208 | default = []; | ||
209 | description = '' | ||
210 | MariaDB databases to backup | ||
211 | ''; | ||
212 | }; | ||
213 | postgresqlDatabasesPauseReplicationHost = lib.mkOption { | ||
214 | type = lib.types.nullOr lib.types.str; | ||
215 | default = null; | ||
216 | description = '' | ||
217 | Replicatino host to pause before the backup | ||
218 | ''; | ||
219 | }; | ||
220 | postgresqlDatabases = lib.mkOption { | ||
221 | type = lib.types.listOf (lib.types.attrsOf lib.types.str); | ||
222 | default = []; | ||
223 | description = '' | ||
224 | Postgresql databases to backup | ||
225 | ''; | ||
226 | }; | ||
227 | excludeFile = lib.mkOption { | ||
228 | type = lib.types.lines; | ||
229 | default = ""; | ||
230 | description = '' | ||
231 | Content to put in exclude file | ||
232 | ''; | ||
233 | }; | ||
234 | ignoredPaths = lib.mkOption { | ||
235 | type = lib.types.listOf lib.types.str; | ||
236 | default = []; | ||
237 | description = '' | ||
238 | List of paths to ignore when checking non-backed-up directories | ||
239 | Can use (POSIX extended) regex | ||
240 | ''; | ||
241 | }; | ||
242 | }; | ||
243 | }); | ||
244 | }; | ||
245 | }; | ||
246 | |||
247 | config = lib.mkIf config.services.borgBackup.enable { | ||
248 | system.activationScripts.borg_backup = '' | ||
249 | install -m 0700 -o root -g root -d ${varDir} | ||
250 | ''; | ||
251 | secrets.keys = lib.listToAttrs (lib.flatten (lib.mapAttrsToList (k: v: | ||
252 | let | ||
253 | bucket = if v.hash or true then builtins.hashString "sha256" v.bucket else v.bucket; | ||
254 | in map (remote: [ | ||
255 | (lib.nameValuePair "borg_backup/${remote}_${k}/borgmatic.yaml" { | ||
256 | permissions = "0400"; | ||
257 | text = borgProfile v remote bucket; | ||
258 | }) | ||
259 | (lib.nameValuePair "borg_backup/${remote}_${k}" { | ||
260 | permissions = "0700"; | ||
261 | isDir = true; | ||
262 | }) | ||
263 | ]) v.remotes) config.services.borgBackup.profiles)) // { | ||
264 | "borg_backup/identity" = { | ||
265 | permissions = "0400"; | ||
266 | text = "{{ .ssl_keys.borg_backup }}"; | ||
267 | }; | ||
268 | "borg_backup/backuped_mysql_list" = { | ||
269 | permissions = "0400"; | ||
270 | text = builtins.concatStringsSep "\n" (lib.concatMap (v: (builtins.map (b: b.name) v.mariaDBDatabases)) (builtins.attrValues config.services.borgBackup.profiles)); | ||
271 | }; | ||
272 | "borg_backup/backuped_psql_list" = { | ||
273 | permissions = "0400"; | ||
274 | text = builtins.concatStringsSep "\n" (lib.concatMap (v: (builtins.map (b: b.name) v.postgresqlDatabases)) (builtins.attrValues config.services.borgBackup.profiles)); | ||
275 | }; | ||
276 | "borg_backup/ignored_list" = { | ||
277 | permissions = "0400"; | ||
278 | text = let | ||
279 | ignored = map | ||
280 | (v: map (p: "${v.rootDir}/${p}") v.ignoredPaths) | ||
281 | (builtins.attrValues config.services.borgBackup.profiles); | ||
282 | in builtins.concatStringsSep "\n" (lib.flatten ignored); | ||
283 | }; | ||
284 | "borg_backup/backuped_list" = { | ||
285 | permissions = "0400"; | ||
286 | text = let | ||
287 | included = map | ||
288 | (v: map (p: "${v.rootDir}/${p}") v.includedPaths) | ||
289 | (builtins.attrValues config.services.borgBackup.profiles); | ||
290 | in builtins.concatStringsSep "\n" (lib.flatten included); | ||
291 | }; | ||
292 | }; | ||
293 | |||
294 | programs.ssh.knownHostsFiles = [ | ||
295 | (pkgs.writeText | ||
296 | "borg_backup_known_hosts" | ||
297 | (builtins.concatStringsSep | ||
298 | "\n" | ||
299 | (builtins.filter | ||
300 | (v: v != null) | ||
301 | (builtins.map | ||
302 | (v: v.sshKnownHosts) | ||
303 | (builtins.attrValues cfg.remotes) | ||
304 | ) | ||
305 | ) | ||
306 | ) | ||
307 | ) | ||
308 | ]; | ||
309 | environment.systemPackages = [ pkgs.borgbackup pkgs.borgmatic borg_backup_full_with_ignored borg_backup check_backups ] ++ (lib.optionals (name == "backup-2") [ check_mysql_backups check_psql_backups ]); | ||
310 | services.cron = { | ||
311 | enable = true; | ||
312 | systemCronJobs = [ | ||
313 | "0 0 * * * root ${borg_backup}/bin/borg_backup 300" | ||
314 | ]; | ||
315 | |||
316 | }; | ||
317 | |||
318 | }; | ||
319 | }; | ||
320 | }; | ||
321 | } | ||
diff --git a/systems/backup-2/base.nix b/systems/backup-2/base.nix index 97a364c..61eecc9 100644 --- a/systems/backup-2/base.nix +++ b/systems/backup-2/base.nix | |||
@@ -92,6 +92,8 @@ | |||
92 | }; | 92 | }; |
93 | }; | 93 | }; |
94 | 94 | ||
95 | services.borgBackup.enable = true; | ||
96 | |||
95 | services.rsyncBackup = { | 97 | services.rsyncBackup = { |
96 | mountpoint = "/backup2"; | 98 | mountpoint = "/backup2"; |
97 | profiles = config.myEnv.rsync_backup.profiles; | 99 | profiles = config.myEnv.rsync_backup.profiles; |
@@ -99,6 +101,13 @@ | |||
99 | ssh_key_private = config.secrets.fullPaths."rsync_backup/identity"; | 101 | ssh_key_private = config.secrets.fullPaths."rsync_backup/identity"; |
100 | }; | 102 | }; |
101 | 103 | ||
104 | services.borgBackup.profiles.global = { | ||
105 | bucket = "global"; | ||
106 | hash = false; | ||
107 | remotes = [ "attilax" ]; | ||
108 | rootDir = "/backup2/eldiron"; | ||
109 | includedPaths = [ "databases_latest_backups" ]; | ||
110 | }; | ||
102 | myServices.mailRelay.enable = true; | 111 | myServices.mailRelay.enable = true; |
103 | myServices.mailBackup.enable = true; | 112 | myServices.mailBackup.enable = true; |
104 | myServices.monitoring.enable = true; | 113 | myServices.monitoring.enable = true; |
diff --git a/systems/backup-2/databases/mariadb_replication.nix b/systems/backup-2/databases/mariadb_replication.nix index f113219..c085682 100644 --- a/systems/backup-2/databases/mariadb_replication.nix +++ b/systems/backup-2/databases/mariadb_replication.nix | |||
@@ -163,6 +163,9 @@ in | |||
163 | --flush-privileges \ | 163 | --flush-privileges \ |
164 | --all-databases > $filename | 164 | --all-databases > $filename |
165 | ${pkgs.gzip}/bin/gzip $filename | 165 | ${pkgs.gzip}/bin/gzip $filename |
166 | |||
167 | mkdir -p "${cfg.base}/${name}/databases_latest_backups" | ||
168 | ln -f "$filename.gz" "${cfg.base}/${name}/databases_latest_backups/mysql.sql.gz" | ||
166 | ''; | 169 | ''; |
167 | u = pkgs.callPackage ./utils.nix {}; | 170 | u = pkgs.callPackage ./utils.nix {}; |
168 | cleanup_script = pkgs.writeScript "cleanup_mysql_${name}" (u.exponentialDumps "sql.gz" backupDir); | 171 | cleanup_script = pkgs.writeScript "cleanup_mysql_${name}" (u.exponentialDumps "sql.gz" backupDir); |
@@ -194,7 +197,7 @@ in | |||
194 | } | 197 | } |
195 | ) cfg.hosts; | 198 | ) cfg.hosts; |
196 | 199 | ||
197 | environment.systemPackages = lib.mapAttrsToList (name: hcfg: | 200 | environment.systemPackages = [ pkgs.mariadb ] ++ lib.mapAttrsToList (name: hcfg: |
198 | pkgs.writeScriptBin "mysql_backup_${name}" '' | 201 | pkgs.writeScriptBin "mysql_backup_${name}" '' |
199 | #!${pkgs.stdenv.shell} | 202 | #!${pkgs.stdenv.shell} |
200 | 203 | ||
diff --git a/systems/backup-2/databases/openldap_replication.nix b/systems/backup-2/databases/openldap_replication.nix index b962224..d3cda1c 100644 --- a/systems/backup-2/databases/openldap_replication.nix +++ b/systems/backup-2/databases/openldap_replication.nix | |||
@@ -121,7 +121,11 @@ in | |||
121 | backup_script = pkgs.writeScript "backup_openldap_${name}" '' | 121 | backup_script = pkgs.writeScript "backup_openldap_${name}" '' |
122 | #!${pkgs.stdenv.shell} | 122 | #!${pkgs.stdenv.shell} |
123 | 123 | ||
124 | ${hcfg.package}/bin/slapcat -b "${hcfg.base}" -f ${ldapConfig hcfg name} -l ${backupDir}/$(${pkgs.coreutils}/bin/date -Iminutes).ldif | 124 | filename="${backupDir}/$(${pkgs.coreutils}/bin/date -Iminutes).ldif" |
125 | ${hcfg.package}/bin/slapcat -b "${hcfg.base}" -f ${ldapConfig hcfg name} -l "$filename" | ||
126 | |||
127 | mkdir -p "${cfg.base}/${name}/databases_latest_backups" | ||
128 | ln -f "$filename" "${cfg.base}/${name}/databases_latest_backups/openldap.ldif" | ||
125 | ''; | 129 | ''; |
126 | u = pkgs.callPackage ./utils.nix {}; | 130 | u = pkgs.callPackage ./utils.nix {}; |
127 | cleanup_script = pkgs.writeScript "cleanup_openldap_${name}" (u.exponentialDumps "ldif" backupDir); | 131 | cleanup_script = pkgs.writeScript "cleanup_openldap_${name}" (u.exponentialDumps "ldif" backupDir); |
diff --git a/systems/backup-2/databases/postgresql_replication.nix b/systems/backup-2/databases/postgresql_replication.nix index 5351a4f..b428533 100644 --- a/systems/backup-2/databases/postgresql_replication.nix +++ b/systems/backup-2/databases/postgresql_replication.nix | |||
@@ -127,19 +127,23 @@ in | |||
127 | set -euo pipefail | 127 | set -euo pipefail |
128 | 128 | ||
129 | resume_replication() { | 129 | resume_replication() { |
130 | ${hcfg.package}/bin/psql -h ${dataDir} -c "SELECT pg_wal_replay_resume();" >/dev/null || echo "impossible to resume replication" | 130 | sudo -u postgres ${hcfg.package}/bin/psql -h ${dataDir} -c "SELECT pg_wal_replay_resume();" >/dev/null || echo "impossible to resume replication" |
131 | } | 131 | } |
132 | 132 | ||
133 | trap resume_replication EXIT | 133 | trap resume_replication EXIT |
134 | 134 | ||
135 | ${hcfg.package}/bin/psql -h ${dataDir} -c "SELECT pg_wal_replay_pause();" >/dev/null || (echo "impossible to pause replication" && false) | 135 | sudo -u postgres ${hcfg.package}/bin/psql -h ${dataDir} -c "SELECT pg_wal_replay_pause();" >/dev/null || (echo "impossible to pause replication" && false) |
136 | 136 | ||
137 | ${hcfg.package}/bin/pg_dumpall -h ${dataDir} -f ${backupDir}/$(${pkgs.coreutils}/bin/date -Iminutes).sql | 137 | filename=${backupDir}/$(${pkgs.coreutils}/bin/date -Iminutes).sql |
138 | sudo -u postgres ${hcfg.package}/bin/pg_dumpall -h ${dataDir} -f "$filename" | ||
139 | |||
140 | mkdir -p "${cfg.base}/${name}/databases_latest_backups" | ||
141 | ln -f "$filename" "${cfg.base}/${name}/databases_latest_backups/postgresql.sql" | ||
138 | ''; | 142 | ''; |
139 | u = pkgs.callPackage ./utils.nix {}; | 143 | u = pkgs.callPackage ./utils.nix {}; |
140 | cleanup_script = pkgs.writeScript "cleanup_postgresql_${name}" (u.keepLastNDumps "sql" backupDir 6); | 144 | cleanup_script = pkgs.writeScript "cleanup_postgresql_${name}" (u.keepLastNDumps "sql" backupDir 6); |
141 | in [ | 145 | in [ |
142 | "0 22,4,10,16 * * * postgres ${backup_script}" | 146 | "0 22,4,10,16 * * * root ${backup_script}" |
143 | "0 3 * * * postgres ${cleanup_script}" | 147 | "0 3 * * * postgres ${cleanup_script}" |
144 | ]) cfg.hosts); | 148 | ]) cfg.hosts); |
145 | }; | 149 | }; |
diff --git a/systems/backup-2/databases/redis_replication.nix b/systems/backup-2/databases/redis_replication.nix index 53fa904..1088630 100644 --- a/systems/backup-2/databases/redis_replication.nix +++ b/systems/backup-2/databases/redis_replication.nix | |||
@@ -114,8 +114,11 @@ in | |||
114 | backup_script = pkgs.writeScript "backup_redis_${name}" '' | 114 | backup_script = pkgs.writeScript "backup_redis_${name}" '' |
115 | #!${pkgs.stdenv.shell} | 115 | #!${pkgs.stdenv.shell} |
116 | 116 | ||
117 | ${pkgs.coreutils}/bin/cp ${cfg.base}/${name}/redis/dump.rdb \ | 117 | filename="${backupDir}/$(${pkgs.coreutils}/bin/date -Iminutes).rdb" |
118 | ${backupDir}/$(${pkgs.coreutils}/bin/date -Iminutes).rdb | 118 | ${pkgs.coreutils}/bin/cp ${cfg.base}/${name}/redis/dump.rdb "$filename" |
119 | |||
120 | mkdir -p "${cfg.base}/${name}/databases_latest_backups" | ||
121 | ln -f "$filename" "${cfg.base}/${name}/databases_latest_backups/redis.rdb" | ||
119 | ''; | 122 | ''; |
120 | u = pkgs.callPackage ./utils.nix {}; | 123 | u = pkgs.callPackage ./utils.nix {}; |
121 | cleanup_script = pkgs.writeScript "cleanup_redis_${name}" (u.exponentialDumps "rdb" backupDir); | 124 | cleanup_script = pkgs.writeScript "cleanup_redis_${name}" (u.exponentialDumps "rdb" backupDir); |
diff --git a/systems/backup-2/flake.lock b/systems/backup-2/flake.lock index 2eee849..2e5b9b2 100644 --- a/systems/backup-2/flake.lock +++ b/systems/backup-2/flake.lock | |||
@@ -16,9 +16,25 @@ | |||
16 | "type": "path" | 16 | "type": "path" |
17 | } | 17 | } |
18 | }, | 18 | }, |
19 | "borg-backup": { | ||
20 | "inputs": { | ||
21 | "environment": "environment", | ||
22 | "secrets": "secrets" | ||
23 | }, | ||
24 | "locked": { | ||
25 | "lastModified": 1, | ||
26 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
27 | "path": "../../flakes/private/borg_backup", | ||
28 | "type": "path" | ||
29 | }, | ||
30 | "original": { | ||
31 | "path": "../../flakes/private/borg_backup", | ||
32 | "type": "path" | ||
33 | } | ||
34 | }, | ||
19 | "chatons": { | 35 | "chatons": { |
20 | "inputs": { | 36 | "inputs": { |
21 | "environment": "environment" | 37 | "environment": "environment_2" |
22 | }, | 38 | }, |
23 | "locked": { | 39 | "locked": { |
24 | "lastModified": 1, | 40 | "lastModified": 1, |
@@ -87,11 +103,11 @@ | |||
87 | "locked": { | 103 | "locked": { |
88 | "lastModified": 1, | 104 | "lastModified": 1, |
89 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 105 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
90 | "path": "../../flakes/private/environment", | 106 | "path": "../environment", |
91 | "type": "path" | 107 | "type": "path" |
92 | }, | 108 | }, |
93 | "original": { | 109 | "original": { |
94 | "path": "../../flakes/private/environment", | 110 | "path": "../environment", |
95 | "type": "path" | 111 | "type": "path" |
96 | } | 112 | } |
97 | }, | 113 | }, |
@@ -99,11 +115,11 @@ | |||
99 | "locked": { | 115 | "locked": { |
100 | "lastModified": 1, | 116 | "lastModified": 1, |
101 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | 117 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", |
102 | "path": "../environment", | 118 | "path": "../../flakes/private/environment", |
103 | "type": "path" | 119 | "type": "path" |
104 | }, | 120 | }, |
105 | "original": { | 121 | "original": { |
106 | "path": "../environment", | 122 | "path": "../../flakes/private/environment", |
107 | "type": "path" | 123 | "type": "path" |
108 | } | 124 | } |
109 | }, | 125 | }, |
@@ -155,6 +171,18 @@ | |||
155 | "type": "path" | 171 | "type": "path" |
156 | } | 172 | } |
157 | }, | 173 | }, |
174 | "environment_8": { | ||
175 | "locked": { | ||
176 | "lastModified": 1, | ||
177 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
178 | "path": "../environment", | ||
179 | "type": "path" | ||
180 | }, | ||
181 | "original": { | ||
182 | "path": "../environment", | ||
183 | "type": "path" | ||
184 | } | ||
185 | }, | ||
158 | "files-watcher": { | 186 | "files-watcher": { |
159 | "locked": { | 187 | "locked": { |
160 | "lastModified": 1, | 188 | "lastModified": 1, |
@@ -347,8 +375,8 @@ | |||
347 | }, | 375 | }, |
348 | "mail-relay": { | 376 | "mail-relay": { |
349 | "inputs": { | 377 | "inputs": { |
350 | "environment": "environment_3", | 378 | "environment": "environment_4", |
351 | "secrets": "secrets" | 379 | "secrets": "secrets_2" |
352 | }, | 380 | }, |
353 | "locked": { | 381 | "locked": { |
354 | "lastModified": 1, | 382 | "lastModified": 1, |
@@ -363,11 +391,11 @@ | |||
363 | }, | 391 | }, |
364 | "milters": { | 392 | "milters": { |
365 | "inputs": { | 393 | "inputs": { |
366 | "environment": "environment_4", | 394 | "environment": "environment_5", |
367 | "files-watcher": "files-watcher", | 395 | "files-watcher": "files-watcher", |
368 | "openarc": "openarc", | 396 | "openarc": "openarc", |
369 | "opendmarc": "opendmarc", | 397 | "opendmarc": "opendmarc", |
370 | "secrets": "secrets_2" | 398 | "secrets": "secrets_3" |
371 | }, | 399 | }, |
372 | "locked": { | 400 | "locked": { |
373 | "lastModified": 1, | 401 | "lastModified": 1, |
@@ -382,10 +410,10 @@ | |||
382 | }, | 410 | }, |
383 | "monitoring": { | 411 | "monitoring": { |
384 | "inputs": { | 412 | "inputs": { |
385 | "environment": "environment_5", | 413 | "environment": "environment_6", |
386 | "naemon": "naemon", | 414 | "naemon": "naemon", |
387 | "nixpkgs-lib": "nixpkgs-lib", | 415 | "nixpkgs-lib": "nixpkgs-lib", |
388 | "secrets": "secrets_3" | 416 | "secrets": "secrets_4" |
389 | }, | 417 | }, |
390 | "locked": { | 418 | "locked": { |
391 | "lastModified": 1, | 419 | "lastModified": 1, |
@@ -852,7 +880,7 @@ | |||
852 | "inputs": { | 880 | "inputs": { |
853 | "files-watcher": "files-watcher_2", | 881 | "files-watcher": "files-watcher_2", |
854 | "openarc": "openarc_4", | 882 | "openarc": "openarc_4", |
855 | "secrets": "secrets_4" | 883 | "secrets": "secrets_5" |
856 | }, | 884 | }, |
857 | "locked": { | 885 | "locked": { |
858 | "lastModified": 1, | 886 | "lastModified": 1, |
@@ -918,10 +946,10 @@ | |||
918 | }, | 946 | }, |
919 | "opendmarc_2": { | 947 | "opendmarc_2": { |
920 | "inputs": { | 948 | "inputs": { |
921 | "environment": "environment_6", | 949 | "environment": "environment_7", |
922 | "files-watcher": "files-watcher_3", | 950 | "files-watcher": "files-watcher_3", |
923 | "opendmarc": "opendmarc_3", | 951 | "opendmarc": "opendmarc_3", |
924 | "secrets": "secrets_5" | 952 | "secrets": "secrets_6" |
925 | }, | 953 | }, |
926 | "locked": { | 954 | "locked": { |
927 | "lastModified": 1, | 955 | "lastModified": 1, |
@@ -965,8 +993,9 @@ | |||
965 | }, | 993 | }, |
966 | "root": { | 994 | "root": { |
967 | "inputs": { | 995 | "inputs": { |
996 | "borg-backup": "borg-backup", | ||
968 | "chatons": "chatons", | 997 | "chatons": "chatons", |
969 | "environment": "environment_2", | 998 | "environment": "environment_3", |
970 | "loginctl-linger": "loginctl-linger", | 999 | "loginctl-linger": "loginctl-linger", |
971 | "mail-relay": "mail-relay", | 1000 | "mail-relay": "mail-relay", |
972 | "milters": "milters", | 1001 | "milters": "milters", |
@@ -978,7 +1007,7 @@ | |||
978 | "opendmarc": "opendmarc_2", | 1007 | "opendmarc": "opendmarc_2", |
979 | "openldap": "openldap", | 1008 | "openldap": "openldap", |
980 | "rsync_backup": "rsync_backup", | 1009 | "rsync_backup": "rsync_backup", |
981 | "secrets": "secrets_6", | 1010 | "secrets": "secrets_7", |
982 | "system": "system" | 1011 | "system": "system" |
983 | } | 1012 | } |
984 | }, | 1013 | }, |
@@ -1070,6 +1099,18 @@ | |||
1070 | "locked": { | 1099 | "locked": { |
1071 | "lastModified": 1, | 1100 | "lastModified": 1, |
1072 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | 1101 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", |
1102 | "path": "../../secrets", | ||
1103 | "type": "path" | ||
1104 | }, | ||
1105 | "original": { | ||
1106 | "path": "../../secrets", | ||
1107 | "type": "path" | ||
1108 | } | ||
1109 | }, | ||
1110 | "secrets_7": { | ||
1111 | "locked": { | ||
1112 | "lastModified": 1, | ||
1113 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
1073 | "path": "../../flakes/secrets", | 1114 | "path": "../../flakes/secrets", |
1074 | "type": "path" | 1115 | "type": "path" |
1075 | }, | 1116 | }, |
@@ -1097,7 +1138,7 @@ | |||
1097 | "system": { | 1138 | "system": { |
1098 | "inputs": { | 1139 | "inputs": { |
1099 | "backports": "backports", | 1140 | "backports": "backports", |
1100 | "environment": "environment_7", | 1141 | "environment": "environment_8", |
1101 | "mypackages": "mypackages", | 1142 | "mypackages": "mypackages", |
1102 | "myuids": "myuids_6", | 1143 | "myuids": "myuids_6", |
1103 | "secrets-public": "secrets-public" | 1144 | "secrets-public": "secrets-public" |
diff --git a/systems/backup-2/flake.nix b/systems/backup-2/flake.nix index e6807d6..f172b59 100644 --- a/systems/backup-2/flake.nix +++ b/systems/backup-2/flake.nix | |||
@@ -4,6 +4,7 @@ | |||
4 | 4 | ||
5 | my-lib.url = "path:../../flakes/lib"; | 5 | my-lib.url = "path:../../flakes/lib"; |
6 | 6 | ||
7 | borg-backup.url = "path:../../flakes/private/borg_backup"; | ||
7 | openldap.url = "path:../../flakes/private/openldap"; | 8 | openldap.url = "path:../../flakes/private/openldap"; |
8 | monitoring.url = "path:../../flakes/private/monitoring"; | 9 | monitoring.url = "path:../../flakes/private/monitoring"; |
9 | mail-relay.url = "path:../../flakes/private/mail-relay"; | 10 | mail-relay.url = "path:../../flakes/private/mail-relay"; |
@@ -41,6 +42,7 @@ | |||
41 | secrets = inputs.secrets.nixosModule; | 42 | secrets = inputs.secrets.nixosModule; |
42 | rsync_backup = inputs.rsync_backup.nixosModule; | 43 | rsync_backup = inputs.rsync_backup.nixosModule; |
43 | loginctl-linger = inputs.loginctl-linger.nixosModule; | 44 | loginctl-linger = inputs.loginctl-linger.nixosModule; |
45 | borg-backup = inputs.borg-backup.nixosModule; | ||
44 | }; | 46 | }; |
45 | moduleArgs = { | 47 | moduleArgs = { |
46 | nixpkgs = inputs.nixpkgs; | 48 | nixpkgs = inputs.nixpkgs; |
diff --git a/systems/eldiron/base.nix b/systems/eldiron/base.nix index 4535dcf..4546212 100644 --- a/systems/eldiron/base.nix +++ b/systems/eldiron/base.nix | |||
@@ -118,7 +118,6 @@ | |||
118 | ./buildbot | 118 | ./buildbot |
119 | ./coturn.nix | 119 | ./coturn.nix |
120 | ./dns.nix | 120 | ./dns.nix |
121 | ./borg_backup.nix | ||
122 | ./duply_backup.nix | 121 | ./duply_backup.nix |
123 | ./gemini | 122 | ./gemini |
124 | ./gitolite | 123 | ./gitolite |
diff --git a/systems/eldiron/borg_backup.nix b/systems/eldiron/borg_backup.nix deleted file mode 100644 index f83594a..0000000 --- a/systems/eldiron/borg_backup.nix +++ /dev/null | |||
@@ -1,242 +0,0 @@ | |||
1 | { lib, pkgs, config, name, ... }: | ||
2 | |||
3 | let | ||
4 | cfg = config.myEnv.borg_backup; | ||
5 | varDir = "/var/lib/borgbackup"; | ||
6 | borg_args = "--encryption repokey --make-parent-dirs init create prune compact check"; | ||
7 | borg_backup_full_with_ignored = pkgs.writeScriptBin "borg_full_with_ignored" '' | ||
8 | #!${pkgs.stdenv.shell} | ||
9 | |||
10 | if [ -z "$1" -o "$1" = "-h" -o "$1" = "--help" ]; then | ||
11 | echo "borg_full_with_ignored /path/to/borgmatic.yaml" | ||
12 | echo "Does a full backup including directories with .duplicity-ignore" | ||
13 | exit 1 | ||
14 | fi | ||
15 | ${pkgs.borgmatic}/bin/borgmatic -c "$1" --override 'storage.archive_name_format="{hostname}-with-ignored-{now:%Y-%m-%dT%H:%M:%S.%f}"' --override 'location.exclude_if_present=[]' ${borg_args} | ||
16 | ''; | ||
17 | borg_backup = pkgs.writeScriptBin "borg_backup" '' | ||
18 | #!${pkgs.stdenv.shell} | ||
19 | |||
20 | declare -a profiles | ||
21 | profiles=() | ||
22 | ${builtins.concatStringsSep "\n" (lib.flatten (lib.mapAttrsToList (k: v: map (remote: [ | ||
23 | ''profiles+=("${remote}_${k}")'' | ||
24 | ]) v.remotes) config.services.borgBackup.profiles))} | ||
25 | |||
26 | if [ -f "${varDir}/last_backup_profile" ]; then | ||
27 | last_backup=$(cat ${varDir}/last_backup_profile) | ||
28 | for i in "''${!profiles[@]}"; do | ||
29 | if [[ "''${profiles[$i]}" = "$last_backup" ]]; then | ||
30 | break | ||
31 | fi | ||
32 | done | ||
33 | ((i+=1)) | ||
34 | profiles=("''${profiles[@]:$i}" "''${profiles[@]:0:$i}") | ||
35 | fi | ||
36 | |||
37 | # timeout in minutes | ||
38 | timeout="''${1:-180}" | ||
39 | timeout_timestamp=$(date +%s -d "$timeout minutes") | ||
40 | for profile in "''${profiles[@]}"; do | ||
41 | if [ $(date +%s -d "now") -ge "$timeout_timestamp" ]; then | ||
42 | break | ||
43 | fi | ||
44 | |||
45 | touch "${varDir}/$profile.log" | ||
46 | ${pkgs.borgmatic}/bin/borgmatic -c "${config.secrets.location}/borg_backup/$profile/borgmatic.yaml" ${borg_args} >> ${varDir}/$profile.log | ||
47 | [[ $? = 0 ]] || echo -e "Error when doing backup for $profile, see above or logs in ${varDir}/$profile.log\n---------------------------------------" >&2 | ||
48 | echo "$profile" > ${varDir}/last_backup_profile | ||
49 | done | ||
50 | ''; | ||
51 | |||
52 | check_backups = pkgs.writeScriptBin "borg_list_not_backuped" '' | ||
53 | #!${pkgs.stdenv.shell} | ||
54 | |||
55 | do_check() { | ||
56 | local dir="$1" path ignored_path | ||
57 | find "$dir" -mindepth 1 -maxdepth 1 | while IFS= read -r path; do | ||
58 | if ${pkgs.gnugrep}/bin/grep -qFx "$path" ${config.secrets.fullPaths."borg_backup/backuped_list"}; then | ||
59 | continue | ||
60 | elif ${pkgs.gnugrep}/bin/grep -q "^$path/" ${config.secrets.fullPaths."borg_backup/backuped_list"}; then | ||
61 | do_check "$path" | ||
62 | else | ||
63 | while IFS= read -r ignored_path; do | ||
64 | if [[ "$path" =~ ^$ignored_path$ ]]; then | ||
65 | continue 2 | ||
66 | fi | ||
67 | done < ${config.secrets.fullPaths."borg_backup/ignored_list"} | ||
68 | printf '%s\n' "$path" | ||
69 | fi | ||
70 | done | ||
71 | } | ||
72 | |||
73 | do_check /var/lib | ||
74 | ''; | ||
75 | borgProfile = profile: remote: bucket: builtins.toJSON { | ||
76 | location = { | ||
77 | source_directories = map (p: "${profile.rootDir}/${p}") profile.includedPaths; | ||
78 | repositories = [ | ||
79 | { path = cfg.remotes.${remote}.remote name bucket; label = "backupserver"; } | ||
80 | ]; | ||
81 | one_file_system = false; | ||
82 | exclude_if_present = [".duplicity-ignore"]; | ||
83 | source_directories_must_exist = profile.directoriesMustExist; | ||
84 | borgmatic_source_directory = "${varDir}/${profile.bucket}/.borgmatic"; | ||
85 | }; | ||
86 | storage = { | ||
87 | encryption_passphrase = profile.password; | ||
88 | ssh_command = "ssh -i ${config.secrets.fullPaths."borg_backup/identity"}"; | ||
89 | compression = "zlib"; | ||
90 | borg_base_directory = "${varDir}/${profile.bucket}"; | ||
91 | relocated_repo_access_is_ok = true; | ||
92 | }; | ||
93 | retention = { | ||
94 | keep_within = "10d"; | ||
95 | keep_daily = 30; | ||
96 | }; | ||
97 | }; | ||
98 | in | ||
99 | { | ||
100 | options = { | ||
101 | services.borgBackup.enable = lib.mkOption { | ||
102 | type = lib.types.bool; | ||
103 | default = false; | ||
104 | description = '' | ||
105 | Whether to enable remote backups. | ||
106 | ''; | ||
107 | }; | ||
108 | services.borgBackup.profiles = lib.mkOption { | ||
109 | type = lib.types.attrsOf (lib.types.submodule { | ||
110 | options = { | ||
111 | hash = lib.mkOption { | ||
112 | type = lib.types.bool; | ||
113 | default = true; | ||
114 | description = '' | ||
115 | Hash bucket and directory names | ||
116 | ''; | ||
117 | }; | ||
118 | rootDir = lib.mkOption { | ||
119 | type = lib.types.path; | ||
120 | default = "/var/lib"; | ||
121 | description = '' | ||
122 | Path to backup | ||
123 | ''; | ||
124 | }; | ||
125 | password = lib.mkOption { | ||
126 | type = lib.types.str; | ||
127 | default = cfg.password; | ||
128 | description = '' | ||
129 | password to use to encrypt data | ||
130 | ''; | ||
131 | }; | ||
132 | directoriesMustExist = lib.mkOption { | ||
133 | type = lib.types.bool; | ||
134 | default = true; | ||
135 | description = '' | ||
136 | Raise error if backuped directory doesn't exist | ||
137 | ''; | ||
138 | }; | ||
139 | bucket = lib.mkOption { | ||
140 | type = lib.types.str; | ||
141 | description = '' | ||
142 | Bucket to use | ||
143 | ''; | ||
144 | }; | ||
145 | remotes = lib.mkOption { | ||
146 | type = lib.types.listOf lib.types.str; | ||
147 | description = '' | ||
148 | Remotes to use for backup | ||
149 | ''; | ||
150 | }; | ||
151 | includedPaths = lib.mkOption { | ||
152 | type = lib.types.listOf lib.types.str; | ||
153 | default = []; | ||
154 | description = '' | ||
155 | Included paths (subdirs of rootDir) | ||
156 | ''; | ||
157 | }; | ||
158 | excludeFile = lib.mkOption { | ||
159 | type = lib.types.lines; | ||
160 | default = ""; | ||
161 | description = '' | ||
162 | Content to put in exclude file | ||
163 | ''; | ||
164 | }; | ||
165 | ignoredPaths = lib.mkOption { | ||
166 | type = lib.types.listOf lib.types.str; | ||
167 | default = []; | ||
168 | description = '' | ||
169 | List of paths to ignore when checking non-backed-up directories | ||
170 | Can use (POSIX extended) regex | ||
171 | ''; | ||
172 | }; | ||
173 | }; | ||
174 | }); | ||
175 | }; | ||
176 | }; | ||
177 | |||
178 | config = lib.mkIf config.services.borgBackup.enable { | ||
179 | system.activationScripts.borg_backup = '' | ||
180 | install -m 0700 -o root -g root -d ${varDir} | ||
181 | ''; | ||
182 | secrets.keys = lib.listToAttrs (lib.flatten (lib.mapAttrsToList (k: v: | ||
183 | let | ||
184 | bucket = if v.hash or true then builtins.hashString "sha256" v.bucket else v.bucket; | ||
185 | in map (remote: [ | ||
186 | (lib.nameValuePair "borg_backup/${remote}_${k}/borgmatic.yaml" { | ||
187 | permissions = "0400"; | ||
188 | text = borgProfile v remote bucket; | ||
189 | }) | ||
190 | (lib.nameValuePair "borg_backup/${remote}_${k}" { | ||
191 | permissions = "0700"; | ||
192 | isDir = true; | ||
193 | }) | ||
194 | ]) v.remotes) config.services.borgBackup.profiles)) // { | ||
195 | "borg_backup/identity" = { | ||
196 | permissions = "0400"; | ||
197 | text = "{{ .ssl_keys.borg_backup }}"; | ||
198 | }; | ||
199 | "borg_backup/ignored_list" = { | ||
200 | permissions = "0400"; | ||
201 | text = let | ||
202 | ignored = map | ||
203 | (v: map (p: "${v.rootDir}/${p}") v.ignoredPaths) | ||
204 | (builtins.attrValues config.services.borgBackup.profiles); | ||
205 | in builtins.concatStringsSep "\n" (lib.flatten ignored); | ||
206 | }; | ||
207 | "borg_backup/backuped_list" = { | ||
208 | permissions = "0400"; | ||
209 | text = let | ||
210 | included = map | ||
211 | (v: map (p: "${v.rootDir}/${p}") v.includedPaths) | ||
212 | (builtins.attrValues config.services.borgBackup.profiles); | ||
213 | in builtins.concatStringsSep "\n" (lib.flatten included); | ||
214 | }; | ||
215 | }; | ||
216 | |||
217 | programs.ssh.knownHostsFiles = [ | ||
218 | (pkgs.writeText | ||
219 | "borg_backup_known_hosts" | ||
220 | (builtins.concatStringsSep | ||
221 | "\n" | ||
222 | (builtins.filter | ||
223 | (v: v != null) | ||
224 | (builtins.map | ||
225 | (v: v.sshKnownHosts) | ||
226 | (builtins.attrValues cfg.remotes) | ||
227 | ) | ||
228 | ) | ||
229 | ) | ||
230 | ) | ||
231 | ]; | ||
232 | environment.systemPackages = [ pkgs.borgbackup pkgs.borgmatic borg_backup_full_with_ignored borg_backup check_backups ]; | ||
233 | services.cron = { | ||
234 | enable = true; | ||
235 | systemCronJobs = [ | ||
236 | "0 0 * * * root ${borg_backup}/bin/borg_backup 300" | ||
237 | ]; | ||
238 | |||
239 | }; | ||
240 | |||
241 | }; | ||
242 | } | ||
diff --git a/systems/eldiron/flake.lock b/systems/eldiron/flake.lock index ac6307e..5922ea2 100644 --- a/systems/eldiron/flake.lock +++ b/systems/eldiron/flake.lock | |||
@@ -198,6 +198,18 @@ | |||
198 | "type": "path" | 198 | "type": "path" |
199 | } | 199 | } |
200 | }, | 200 | }, |
201 | "environment_7": { | ||
202 | "locked": { | ||
203 | "lastModified": 1, | ||
204 | "narHash": "sha256-xrpwkilnPpT6TklQVoLrID8tWUZAH4PJ5XqhRHXGbvo=", | ||
205 | "path": "../environment", | ||
206 | "type": "path" | ||
207 | }, | ||
208 | "original": { | ||
209 | "path": "../environment", | ||
210 | "type": "path" | ||
211 | } | ||
212 | }, | ||
201 | "etherpad-lite": { | 213 | "etherpad-lite": { |
202 | "flake": false, | 214 | "flake": false, |
203 | "locked": { | 215 | "locked": { |
@@ -1966,6 +1978,22 @@ | |||
1966 | "type": "path" | 1978 | "type": "path" |
1967 | } | 1979 | } |
1968 | }, | 1980 | }, |
1981 | "private-borg-backup": { | ||
1982 | "inputs": { | ||
1983 | "environment": "environment", | ||
1984 | "secrets": "secrets" | ||
1985 | }, | ||
1986 | "locked": { | ||
1987 | "lastModified": 1, | ||
1988 | "narHash": "sha256-6IB+N7TeH+3XyK8nwlEX4LGl3EJJLVoESteotut3OUc=", | ||
1989 | "path": "../../flakes/private/borg_backup", | ||
1990 | "type": "path" | ||
1991 | }, | ||
1992 | "original": { | ||
1993 | "path": "../../flakes/private/borg_backup", | ||
1994 | "type": "path" | ||
1995 | } | ||
1996 | }, | ||
1969 | "private-buildbot": { | 1997 | "private-buildbot": { |
1970 | "inputs": { | 1998 | "inputs": { |
1971 | "buildslist": "buildslist", | 1999 | "buildslist": "buildslist", |
@@ -1985,7 +2013,7 @@ | |||
1985 | }, | 2013 | }, |
1986 | "private-chatons": { | 2014 | "private-chatons": { |
1987 | "inputs": { | 2015 | "inputs": { |
1988 | "environment": "environment" | 2016 | "environment": "environment_2" |
1989 | }, | 2017 | }, |
1990 | "locked": { | 2018 | "locked": { |
1991 | "lastModified": 1, | 2019 | "lastModified": 1, |
@@ -2012,11 +2040,11 @@ | |||
2012 | }, | 2040 | }, |
2013 | "private-milters": { | 2041 | "private-milters": { |
2014 | "inputs": { | 2042 | "inputs": { |
2015 | "environment": "environment_2", | 2043 | "environment": "environment_3", |
2016 | "files-watcher": "files-watcher", | 2044 | "files-watcher": "files-watcher", |
2017 | "openarc": "openarc", | 2045 | "openarc": "openarc", |
2018 | "opendmarc": "opendmarc", | 2046 | "opendmarc": "opendmarc", |
2019 | "secrets": "secrets" | 2047 | "secrets": "secrets_2" |
2020 | }, | 2048 | }, |
2021 | "locked": { | 2049 | "locked": { |
2022 | "lastModified": 1, | 2050 | "lastModified": 1, |
@@ -2031,10 +2059,10 @@ | |||
2031 | }, | 2059 | }, |
2032 | "private-monitoring": { | 2060 | "private-monitoring": { |
2033 | "inputs": { | 2061 | "inputs": { |
2034 | "environment": "environment_3", | 2062 | "environment": "environment_4", |
2035 | "naemon": "naemon", | 2063 | "naemon": "naemon", |
2036 | "nixpkgs-lib": "nixpkgs-lib_2", | 2064 | "nixpkgs-lib": "nixpkgs-lib_2", |
2037 | "secrets": "secrets_2" | 2065 | "secrets": "secrets_3" |
2038 | }, | 2066 | }, |
2039 | "locked": { | 2067 | "locked": { |
2040 | "lastModified": 1, | 2068 | "lastModified": 1, |
@@ -2051,7 +2079,7 @@ | |||
2051 | "inputs": { | 2079 | "inputs": { |
2052 | "files-watcher": "files-watcher_2", | 2080 | "files-watcher": "files-watcher_2", |
2053 | "openarc": "openarc_3", | 2081 | "openarc": "openarc_3", |
2054 | "secrets": "secrets_3" | 2082 | "secrets": "secrets_4" |
2055 | }, | 2083 | }, |
2056 | "locked": { | 2084 | "locked": { |
2057 | "lastModified": 1, | 2085 | "lastModified": 1, |
@@ -2066,10 +2094,10 @@ | |||
2066 | }, | 2094 | }, |
2067 | "private-opendmarc": { | 2095 | "private-opendmarc": { |
2068 | "inputs": { | 2096 | "inputs": { |
2069 | "environment": "environment_4", | 2097 | "environment": "environment_5", |
2070 | "files-watcher": "files-watcher_3", | 2098 | "files-watcher": "files-watcher_3", |
2071 | "opendmarc": "opendmarc_2", | 2099 | "opendmarc": "opendmarc_2", |
2072 | "secrets": "secrets_4" | 2100 | "secrets": "secrets_5" |
2073 | }, | 2101 | }, |
2074 | "locked": { | 2102 | "locked": { |
2075 | "lastModified": 1, | 2103 | "lastModified": 1, |
@@ -2129,8 +2157,8 @@ | |||
2129 | }, | 2157 | }, |
2130 | "private-ssh": { | 2158 | "private-ssh": { |
2131 | "inputs": { | 2159 | "inputs": { |
2132 | "environment": "environment_5", | 2160 | "environment": "environment_6", |
2133 | "secrets": "secrets_5" | 2161 | "secrets": "secrets_6" |
2134 | }, | 2162 | }, |
2135 | "locked": { | 2163 | "locked": { |
2136 | "lastModified": 1, | 2164 | "lastModified": 1, |
@@ -2146,7 +2174,7 @@ | |||
2146 | "private-system": { | 2174 | "private-system": { |
2147 | "inputs": { | 2175 | "inputs": { |
2148 | "backports": "backports", | 2176 | "backports": "backports", |
2149 | "environment": "environment_6", | 2177 | "environment": "environment_7", |
2150 | "mypackages": "mypackages", | 2178 | "mypackages": "mypackages", |
2151 | "myuids": "myuids_7", | 2179 | "myuids": "myuids_7", |
2152 | "secrets-public": "secrets-public" | 2180 | "secrets-public": "secrets-public" |
@@ -2471,6 +2499,7 @@ | |||
2471 | "dns-nix": "dns-nix", | 2499 | "dns-nix": "dns-nix", |
2472 | "my-lib": "my-lib", | 2500 | "my-lib": "my-lib", |
2473 | "nixpkgs": "nixpkgs_5", | 2501 | "nixpkgs": "nixpkgs_5", |
2502 | "private-borg-backup": "private-borg-backup", | ||
2474 | "private-buildbot": "private-buildbot", | 2503 | "private-buildbot": "private-buildbot", |
2475 | "private-chatons": "private-chatons", | 2504 | "private-chatons": "private-chatons", |
2476 | "private-environment": "private-environment", | 2505 | "private-environment": "private-environment", |
@@ -2576,6 +2605,18 @@ | |||
2576 | "type": "path" | 2605 | "type": "path" |
2577 | } | 2606 | } |
2578 | }, | 2607 | }, |
2608 | "secrets_6": { | ||
2609 | "locked": { | ||
2610 | "lastModified": 1, | ||
2611 | "narHash": "sha256-5AakznhrJFmwCD7lr4JEh55MtdAJL6WA/YuBks6ISSE=", | ||
2612 | "path": "../../secrets", | ||
2613 | "type": "path" | ||
2614 | }, | ||
2615 | "original": { | ||
2616 | "path": "../../secrets", | ||
2617 | "type": "path" | ||
2618 | } | ||
2619 | }, | ||
2579 | "stable": { | 2620 | "stable": { |
2580 | "locked": { | 2621 | "locked": { |
2581 | "lastModified": 1669735802, | 2622 | "lastModified": 1669735802, |
diff --git a/systems/eldiron/flake.nix b/systems/eldiron/flake.nix index 205571f..3561a5c 100644 --- a/systems/eldiron/flake.nix +++ b/systems/eldiron/flake.nix | |||
@@ -26,6 +26,7 @@ | |||
26 | public-paste.url = "path:../../flakes/paste"; | 26 | public-paste.url = "path:../../flakes/paste"; |
27 | public-taskwarrior-web.url = "path:../../flakes/taskwarrior-web"; | 27 | public-taskwarrior-web.url = "path:../../flakes/taskwarrior-web"; |
28 | 28 | ||
29 | private-borg-backup.url = "path:../../flakes/private/borg_backup"; | ||
29 | private-peertube.url = "path:../../flakes/private/peertube"; | 30 | private-peertube.url = "path:../../flakes/private/peertube"; |
30 | private-buildbot.url = "path:../../flakes/private/buildbot"; | 31 | private-buildbot.url = "path:../../flakes/private/buildbot"; |
31 | private-ports.url = "path:../../flakes/private/ports"; | 32 | private-ports.url = "path:../../flakes/private/ports"; |
@@ -69,6 +70,7 @@ | |||
69 | system = private-system.nixosModule; | 70 | system = private-system.nixosModule; |
70 | monitoring = private-monitoring.nixosModule; | 71 | monitoring = private-monitoring.nixosModule; |
71 | milters = private-milters.nixosModule; | 72 | milters = private-milters.nixosModule; |
73 | borg-backup = private-borg-backup.nixosModule; | ||
72 | }; | 74 | }; |
73 | moduleArgs = with inputs; { | 75 | moduleArgs = with inputs; { |
74 | dns-nix = dns-nix; | 76 | dns-nix = dns-nix; |