8690419c2d 
							
						 
					 
					
						
						
							
							hst: replace internal/app error  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 43s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m3s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m36s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m17s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m27s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m15s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m28s 
				
			 
		
		
	 
 
	 
						
						This turns out to still be quite useful across internal/app and its relatives. Perhaps a cleaner replacement for baseError.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-09-15 01:44:43 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							da0459aca1 
							
						 
					 
					
						
						
							
							internal/app: update doc comments  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m19s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m15s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m50s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m40s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m15s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m36s 
				
			 
		
		
	 
 
	 
						
						A lot of these comments are quite old and have not been updated to reflect changes.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-28 00:45:57 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							4cf694d2b3 
							
						 
					 
					
						
						
							
							hst: use hsu userid for share path suffix  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m8s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m11s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m8s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m31s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m8s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m25s 
				
			 
		
		
	 
 
	 
						
						The privileged user is identifier to hakurei through its hsu userid. Using the kernel uid here makes little sense and is a leftover design choice from before hsu was implemented.
Closes  #7 .
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-26 02:16:33 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							c9facb746b 
							
						 
					 
					
						
						
							
							hst/config: remove data field, rename dir to home  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m13s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m10s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m5s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m27s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m7s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m28s 
				
			 
		
		
	 
 
	 
						
						There is no reason to give the home directory special treatment, as this behaviour can be quite confusing. The home directory also does not necessarily require its own mount point, it could be provided by a parent or simply be ephemeral.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-26 00:56:10 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							878b66022e 
							
						 
					 
					
						
						
							
							hst/fsbind: optional ensure source  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 35s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m18s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m22s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m17s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 5m33s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 3m1s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m29s 
				
			 
		
		
	 
 
	 
						
						This exposes the BindEnsure flag of BindMountOp.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-26 00:50:23 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							c328b584c0 
							
						 
					 
					
						
						
							
							hst/fslink: improve string representation  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 35s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m7s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m14s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m1s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m29s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m9s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m25s 
				
			 
		
		
	 
 
	 
						
						This shortens the representation of most common use cases and generally improves readability.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-25 22:52:48 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							9585b35d5b 
							
						 
					 
					
						
						
							
							hst/config: remove symlink field  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 35s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m15s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m10s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m27s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m12s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m11s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m29s 
				
			 
		
		
	 
 
	 
						
						Closes  #6 .
Signed-off-by: Ophestra <cat@gensokyo.uk> 
					
						2025-08-25 22:23:54 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							26cafe3e80 
							
						 
					 
					
						
						
							
							hst/fs: implement link fstype  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m16s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m8s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m24s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m9s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m31s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m40s 
				
			 
		
		
	 
 
	 
						
						Symlinks do not require special treatment, and doing this allows placing links in order.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-25 21:57:38 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							125f150784 
							
						 
					 
					
						
						
							
							hst/fs: update doc comments  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 35s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m18s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m22s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m15s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m34s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m14s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m32s 
				
			 
		
		
	 
 
	 
						
						The Type method no longer exists on the interface. Update doc comments to reflect that.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-25 21:11:39 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							0dcac55a0c 
							
						 
					 
					
						
						
							
							hst/config: remove container etc field  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 36s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m25s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m18s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m14s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m32s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m19s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m29s 
				
			 
		
		
	 
 
	 
						
						This no longer needs special treatment since it can be specified as a generic filesystem entry.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-25 19:24:33 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							6d202d73b4 
							
						 
					 
					
						
						
							
							hst/fsbind: optional autoetc behaviour  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m18s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m9s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m31s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m6s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m24s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m29s 
				
			 
		
		
	 
 
	 
						
						This generalises the special field allowing any special behaviour to be matched from target.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-25 18:38:19 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							1438096339 
							
						 
					 
					
						
						
							
							hst/config: handle filesystem entry targeting root  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 35s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m20s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m2s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m24s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m6s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m10s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m24s 
				
			 
		
		
	 
 
	 
						
						This allows any fstype supported by hst to be directly mounted on sysroot. A special case in internal/app applies the matching entry early and excludes it from path hiding.
Closes  #5 .
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-25 17:52:57 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							059164d4fa 
							
						 
					 
					
						
						
							
							hst/fsbind: optional autoroot behaviour  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 35s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m17s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m10s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m9s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m33s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m9s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m23s 
				
			 
		
		
	 
 
	 
						
						This allows autoroot to be configured via Filesystem.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-25 17:44:12 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							a3988c1a77 
							
						 
					 
					
						
						
							
							hst: rename net and abstract fields  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m12s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m8s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m2s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m25s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m3s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m22s 
				
			 
		
		
	 
 
	 
						
						This makes more sense and matches the container library.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-18 16:48:01 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							5db0714072 
							
						 
					 
					
						
						
							
							container: optionally isolate host abstract UNIX domain sockets via landlock  
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (pull_request) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (pull_request) Successful in 2m10s 
				
			 
		
			
				
	Test / Hpkg (pull_request) Successful in 4m1s 
				
			 
		
			
				
	Test / Sandbox (race detector) (pull_request) Successful in 4m19s 
				
			 
		
			
				
	Test / Hakurei (pull_request) Successful in 4m55s 
				
			 
		
			
				
	Test / Hakurei (race detector) (pull_request) Successful in 5m0s 
				
			 
		
			
				
	Test / Create distribution (push) Successful in 27s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 44s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 44s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 47s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 47s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 45s 
				
			 
		
			
				
	Test / Flake checks (pull_request) Successful in 1m47s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m36s 
				
			 
		
		
	 
 
	 
						
						
					 
					
						2025-08-18 16:28:14 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							f9edec7e41 
							
						 
					 
					
						
						
							
							hst: merge miscellaneous files  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Hpkg (push) Successful in 4m7s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m21s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m5s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m24s 
				
			 
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m9s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m10s 
				
			 
		
		
	 
 
	 
						
						These structs were going to be bigger at some point. They turned out not to be.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-16 02:32:57 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							305c600cf5 
							
						 
					 
					
						
						
							
							hst: move container type to config  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m10s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m7s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m55s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m18s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 3m5s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m33s 
				
			 
		
		
	 
 
	 
						
						Container state initialisation is no longer implemented in hst so splitting them no longer makes sense.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-16 02:28:36 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							8dd3e1ee5d 
							
						 
					 
					
						
						
							
							hst/fs: rename method Target to Path  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m7s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m7s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m50s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m17s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m3s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m27s 
				
			 
		
		
	 
 
	 
						
						This allows adapter structs to use the same field names as Op structs.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-16 02:06:41 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							4ffeec3004 
							
						 
					 
					
						
						
							
							hst/enablement: editor friendly enablement adaptor  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 35s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 45s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m17s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 43s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 45s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 43s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m27s 
				
			 
		
		
	 
 
	 
						
						Having the bit field value here (in decimal, no less) is unfriendly to text editors. Use a bunch of booleans here to improve ease of use.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-15 05:16:51 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							9ed3ba85ea 
							
						 
					 
					
						
						
							
							hst/fs: implement overlay fstype  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m8s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m8s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m59s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m20s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m1s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m27s 
				
			 
		
		
	 
 
	 
						
						This finally exposes overlay mounts in the high level hakurei API.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-15 04:00:55 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							430991c39b 
							
						 
					 
					
						
						
							
							hst/fs: remove type method  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m3s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m7s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m51s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m14s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m54s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m28s 
				
			 
		
		
	 
 
	 
						
						Having a method that returns the canonical string representation of its type seemed like a much better idea for an implementation that never made it to staging. Remove it here and clean up marshal type assertions.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-15 00:39:02 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							0e543a58b3 
							
						 
					 
					
						
						
							
							hst/fs: valid method on underlying interface  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m59s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m6s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m16s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m24s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m7s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m39s 
				
			 
		
		
	 
 
	 
						
						Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-14 21:36:22 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							c989e7785a 
							
						 
					 
					
						
						
							
							hst/info: include extra information  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 43s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m34s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m45s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m33s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m41s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m25s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m37s 
				
			 
		
		
	 
 
	 
						
						Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-14 19:52:03 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							99ac96511b 
							
						 
					 
					
						
						
							
							hst/fs: interface filesystem config  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m14s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m37s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m27s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m23s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m22s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m22s 
				
			 
		
		
	 
 
	 
						
						This allows mount points to be represented by different underlying structs.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-14 04:52:49 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							e99d7affb0 
							
						 
					 
					
						
						
							
							container: use absolute for pathname  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Flake checks (push) Successful in 1m26s 
				
			 
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m59s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m58s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m45s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m11s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m47s 
				
			 
		
		
	 
 
	 
						
						This is simultaneously more efficient and less error-prone. This change caused minor API changes in multiple other packages.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-11 04:56:42 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							c6be82bcf9 
							
						 
					 
					
						
						
							
							container/path: fhs path constants  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m6s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m6s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m14s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m11s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m40s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m18s 
				
			 
		
		
	 
 
	 
						
						This increases readability since this can help disambiguate absolute paths from similarly named path segments.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-03 21:16:45 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							b32b1975a8 
							
						 
					 
					
						
						
							
							hst/container: remove cover  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m6s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m56s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m55s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m55s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m31s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m20s 
				
			 
		
		
	 
 
	 
						
						This was never useful, and is now completely replaced by regular FilesystemConfig being able to mount tmpfs.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-02 00:34:52 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							af0899de96 
							
						 
					 
					
						
						
							
							hst/container: mount tmpfs via magic src string  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m10s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m50s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m53s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m54s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m30s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m24s 
				
			 
		
		
	 
 
	 
						
						There's often good reason to mount tmpfs in the container.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-01 21:23:52 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							387b86bcdd 
							
						 
					 
					
						
						
							
							app: integrate container autoroot  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 36s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m25s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m13s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m36s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m2s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m40s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m36s 
				
			 
		
		
	 
 
	 
						
						Doing this instead of mounting directly on / because it's impossible to ensure a parent is available for every path hakurei wants to mount to. This situation is similar to autoetc hence the similar name, however a symlink mirror will not work in this case.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-01 04:21:54 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							f7bd28118c 
							
						 
					 
					
						
						
							
							hst: configurable wait delay  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m58s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m47s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m56s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m58s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m31s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m17s 
				
			 
		
		
	 
 
	 
						
						This is useful for programs that take a long time to clean up.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-29 03:06:49 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							b43d104680 
							
						 
					 
					
						
						
							
							app: integrate interrupt forwarding  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m58s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m53s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m53s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m53s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m31s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m19s 
				
			 
		
		
	 
 
	 
						
						This significantly increases usability of command line tools running through hakurei.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-29 02:23:06 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							d2f9a9b83b 
							
						 
					 
					
						
						
							
							treewide: migrate to hakurei.app  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 24s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 46s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m9s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m14s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m41s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 3m40s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m18s 
				
			 
		
		
	 
 
	 
						
						Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-03 03:30:39 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							1b5ecd9eaf 
							
						 
					 
					
						
						
							
							container: move out of toplevel  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m52s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m14s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m36s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m31s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m3s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m13s 
				
			 
		
		
	 
 
	 
						
						This allows slightly easier use of the vanity url. This also provides some disambiguation between low level containers and hakurei app containers.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-03 02:59:43 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							82561d62b6 
							
						 
					 
					
						
						
							
							system: move system access packages  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 31s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m52s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m3s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m38s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m48s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 1m14s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m6s 
				
			 
		
		
	 
 
	 
						
						These packages loosely belong in the "system" package and "system" provides high level wrappers for all of them.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-02 21:52:07 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							eec021cc4b 
							
						 
					 
					
						
						
							
							hakurei: move container helpers toplevel  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m1s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m52s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m8s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m32s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m27s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m9s 
				
			 
		
		
	 
 
	 
						
						Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-02 21:31:29 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							eb22a8bcc1 
							
						 
					 
					
						
						
							
							cmd/hakurei: move to cmd  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 31s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m50s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m2s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m18s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m36s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m35s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m7s 
				
			 
		
		
	 
 
	 
						
						Having it at the project root never made sense since the "ego" name was deprecated. This change finally addresses it.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-02 20:42:51 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							31aef905fa 
							
						 
					 
					
						
						
							
							sandbox: expose seccomp interface  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 31s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m59s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m47s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m11s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m34s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m22s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m8s 
				
			 
		
		
	 
 
	 
						
						There's no point in artificially limiting and abstracting away these options. The higher level hakurei package is responsible for providing a secure baseline and sane defaults. The sandbox package should present everything to the caller.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-02 04:47:13 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							26b7afc890 
							
						 
					 
					
						
						
							
							sandbox/seccomp: prepare -> export  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m51s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m3s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m37s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m17s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m12s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m12s 
				
			 
		
		
	 
 
	 
						
						Export makes a lot more sense, and also matches the libseccomp function.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-02 00:32:48 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							1a8840bebc 
							
						 
					 
					
						
						
							
							sandbox/seccomp: resolve rules natively  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m45s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m49s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m1s 
				
			 
		
			
				
	Test / Planterette (push) Successful in 3m31s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m18s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m6s 
				
			 
		
		
	 
 
	 
						
						This enables loading syscall filter policies from external cross-platform config files.
This also removes a significant amount of C code.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-07-01 22:11:32 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							87e008d56d 
							
						 
					 
					
						
						
							
							treewide: rename to hakurei  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 43s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m18s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m10s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m30s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m43s 
				
			 
		
			
				
	Test / Fpkg (push) Successful in 5m4s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m12s 
				
			 
		
		
	 
 
	 
						
						Fortify makes little sense for a container tool.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-06-25 04:57:41 +09:00