| 
									
										
										
										
											2019-09-18 17:34:02 +09:00
										 |  |  | { lib }: | 
					
						
							| 
									
										
										
										
											2016-01-05 09:22:43 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | with lib; | 
					
						
							| 
									
										
										
										
											2019-08-13 21:52:01 +00:00
										 |  |  | { | 
					
						
							| 
									
										
										
										
											2016-01-05 09:22:43 -05:00
										 |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2018-10-03 18:49:50 +09:00
										 |  |  |   # Keeping these around in case we decide to change this horrible implementation :) | 
					
						
							|  |  |  |   option = x: | 
					
						
							|  |  |  |       x // { optional = true; }; | 
					
						
							| 
									
										
										
										
											2016-01-05 09:22:43 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2020-04-01 03:20:33 +02:00
										 |  |  |   yes      = { tristate    = "y"; optional = false; }; | 
					
						
							|  |  |  |   no       = { tristate    = "n"; optional = false; }; | 
					
						
							|  |  |  |   module   = { tristate    = "m"; optional = false; }; | 
					
						
							|  |  |  |   freeform = x: { freeform = x; optional = false; }; | 
					
						
							| 
									
										
										
										
											2016-01-05 09:22:43 -05:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2019-09-19 20:12:35 +09:00
										 |  |  |   /*
 | 
					
						
							| 
									
										
										
										
											2020-04-26 18:19:02 +01:00
										 |  |  |     Common patterns/legacy used in common-config/hardened/config.nix | 
					
						
							| 
									
										
										
										
											2019-09-19 20:12:35 +09:00
										 |  |  |    */ | 
					
						
							|  |  |  |   whenHelpers = version: { | 
					
						
							|  |  |  |     whenAtLeast = ver: mkIf (versionAtLeast version ver); | 
					
						
							|  |  |  |     whenOlder   = ver: mkIf (versionOlder version ver); | 
					
						
							|  |  |  |     # range is (inclusive, exclusive) | 
					
						
							|  |  |  |     whenBetween = verLow: verHigh: mkIf (versionAtLeast version verLow && versionOlder version verHigh); | 
					
						
							|  |  |  |   }; | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-01-05 09:22:43 -05:00
										 |  |  | } |