87b5c30ef6 
							
						 
					 
					
						
						
							
							message: relocate from container  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 35s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m22s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m2s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m28s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m21s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m9s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m29s 
				
			 
		
		
	 
 
	 
						
						This package is quite useful. This change allows it to be imported without importing container.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-10-09 05:18:19 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							1f0226f7e0 
							
						 
					 
					
						
						
							
							container/check: relocate overlay escape  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m12s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m8s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m9s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m31s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m25s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m40s 
				
			 
		
		
	 
 
	 
						
						This is used in hst to format strings.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-10-07 23:56:19 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							5d18af0007 
							
						 
					 
					
						
						
							
							container/fhs: move pathname constants  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m6s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m1s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m29s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 3m5s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m10s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m21s 
				
			 
		
		
	 
 
	 
						
						This allows referencing FHS pathnames without importing container.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-10-07 21:29:16 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							46cd3a28c8 
							
						 
					 
					
						
						
							
							container: remove global msg  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 1m10s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m40s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m58s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m44s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 5m1s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 6m2s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m47s 
				
			 
		
		
	 
 
	 
						
						This frees all container instances of side effects.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-09-29 06:11:47 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							e55822c62f 
							
						 
					 
					
						
						
							
							container/init: reduce verbose noise  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 56s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m38s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m45s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m36s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m45s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m43s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m41s 
				
			 
		
		
	 
 
	 
						
						This makes it possible to optionally omit the identifying verbose message, for when the Op implementation can provide a much more useful message in its case, using information not yet available to the String method.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-09-28 21:51:10 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							08eeafe817 
							
						 
					 
					
						
						
							
							container/mount: unwrap vfs decoder errors  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 36s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m6s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m21s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m40s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m32s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m19s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m36s 
				
			 
		
		
	 
 
	 
						
						These are now handled by init. This eliminates generic WrapErr from mount and procPaths.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-29 22:15:05 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							50972096cd 
							
						 
					 
					
						
						
							
							container/vfs: wrap decoder errors  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m8s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m15s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m33s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m30s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m19s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m35s 
				
			 
		
		
	 
 
	 
						
						This passes line information and handles strconv errors so it reads better.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-29 21:51:31 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							4da6463135 
							
						 
					 
					
						
						
							
							container/init: unwrap path errors  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m49s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m18s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m43s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m53s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m16s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m36s 
				
			 
		
		
	 
 
	 
						
						These are also now handled by init properly, so wrapping them in self is meaningless and unreachable.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-29 02:04:09 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							eb3385d490 
							
						 
					 
					
						
						
							
							container/initsymlink: unwrap mount errors  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 1m49s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m17s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m42s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m10s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m18s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m38s 
				
			 
		
		
	 
 
	 
						
						The mount function now wraps its own errors in a much more descriptive type with proper message formatting. Wrapping them no longer makes any sense.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-29 01:46:54 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							9bc8532d56 
							
						 
					 
					
						
						
							
							container/initdev: mount tmpfs on shm for ro dev  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 26s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m13s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m51s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m58s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m26s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m46s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m26s 
				
			 
		
		
	 
 
	 
						
						Programs expect /dev/shm to be a writable tmpfs.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-26 03:27:07 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							afe23600d2 
							
						 
					 
					
						
						
							
							container/path: use syscall dispatcher  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m8s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m14s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m8s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m26s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 43s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m39s 
				
			 
		
		
	 
 
	 
						
						This allows path and mount functions to be instrumented.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-22 22:02:21 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							ba3227bf15 
							
						 
					 
					
						
						
							
							container: export overlay escape  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Sandbox (push) Successful in 2m21s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 3m23s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m22s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m14s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 5m8s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m22s 
				
			 
		
			
				
	Test / Create distribution (push) Successful in 37s 
				
			 
		
		
	 
 
	 
						
						Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-14 23:44:11 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							acffa76812 
							
						 
					 
					
						
						
							
							container/ops: implement overlay op  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m2s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m57s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m54s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m6s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m51s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m22s 
				
			 
		
		
	 
 
	 
						
						There are significant limitations to using the overlay mount, and the implementation in the kernel is quite quirky. For now the Op is quite robust, however a higher level interface for it has not been decided yet.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-08 01:54:48 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							9a25542c6d 
							
						 
					 
					
						
						
							
							container/init: use mount string constants  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m13s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 4m6s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m22s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m49s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m4s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m13s 
				
			 
		
		
	 
 
	 
						
						These literals were missed when the constants were first defined.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-04 04:00:05 +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 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							15170735ba 
							
						 
					 
					
						
						
							
							container/mount: move tmpfs sysroot prefixing to caller  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m4s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m54s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m0s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m34s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m6s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m18s 
				
			 
		
		
	 
 
	 
						
						The mountTmpfs helper is a relatively low level function that is not exposed as part of the API. Prefixing sysroot here not only introduces overhead but is also quite error-prone.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-03 18:06:41 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							ff66296378 
							
						 
					 
					
						
						
							
							container/mount: mount data escape helper function  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m0s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m56s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m57s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m7s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m38s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m18s 
				
			 
		
		
	 
 
	 
						
						For formatting user-supplied path strings into overlayfs mount data.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-03 17:46:14 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							0f78864a67 
							
						 
					 
					
						
						
							
							container/mount: export mount string constants  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 33s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m1s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m56s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m47s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 4m1s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m32s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m19s 
				
			 
		
		
	 
 
	 
						
						This improves code readability and should also be useful for callers choosing to preserve CAP_SYS_ADMIN.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-02 17:20:09 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							1dc780bca7 
							
						 
					 
					
						
						
							
							container/mount: separate remount from bind  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 34s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m5s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m52s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m54s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m59s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m34s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m18s 
				
			 
		
		
	 
 
	 
						
						Remount turns out to be useful in other places.
Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-01 23:32:38 +09:00 
						 
				 
			
				
					
						
					 
					
						
						
							
							
								
									
								
							
						
						
						
							
						
						
							547a2adaa4 
							
						 
					 
					
						
						
							
							container/mount: pass tmpfs flags  
						
						... 
						
						
	
		
			
	 
	
	
		
	
	
		
			
				
	Test / Create distribution (push) Successful in 32s 
				
			 
		
			
				
	Test / Sandbox (push) Successful in 2m1s 
				
			 
		
			
				
	Test / Sandbox (race detector) (push) Successful in 3m57s 
				
			 
		
			
				
	Test / Hpkg (push) Successful in 3m55s 
				
			 
		
			
				
	Test / Hakurei (race detector) (push) Successful in 4m30s 
				
			 
		
			
				
	Test / Hakurei (push) Successful in 2m18s 
				
			 
		
			
				
	Test / Flake checks (push) Successful in 1m14s 
				
			 
		
		
	 
 
	 
						
						Signed-off-by: Ophestra <cat@gensokyo.uk> 
						
						
					 
					
						2025-08-01 18:59: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