All checks were successful
Test / Create distribution (push) Successful in 57s
Test / Sandbox (push) Successful in 2m30s
Test / Hakurei (push) Successful in 3m47s
Test / ShareFS (push) Successful in 3m51s
Test / Hpkg (push) Successful in 4m26s
Test / Sandbox (race detector) (push) Successful in 4m55s
Test / Hakurei (race detector) (push) Successful in 5m47s
Test / Flake checks (push) Successful in 1m49s
This is a more reliable form of pathname to self and also cheaper than os.Executable. Signed-off-by: Ophestra <cat@gensokyo.uk>
52 lines
1.8 KiB
Go
52 lines
1.8 KiB
Go
// Package fhs provides constant and checked pathname values for common FHS paths.
|
|
package fhs
|
|
|
|
const (
|
|
// Root points to the file system root.
|
|
Root = "/"
|
|
// Etc points to the directory for system-specific configuration.
|
|
Etc = "/etc/"
|
|
// Tmp points to the place for small temporary files.
|
|
Tmp = "/tmp/"
|
|
|
|
// Run points to a "tmpfs" file system for system packages to place runtime
|
|
// data, socket files, and similar.
|
|
Run = "/run/"
|
|
// RunUser points to a directory containing per-user runtime directories,
|
|
// each usually individually mounted "tmpfs" instances.
|
|
RunUser = Run + "user/"
|
|
|
|
// Usr points to vendor-supplied operating system resources.
|
|
Usr = "/usr/"
|
|
// UsrBin points to binaries and executables for user commands that shall
|
|
// appear in the $PATH search path.
|
|
UsrBin = Usr + "bin/"
|
|
|
|
// Var points to persistent, variable system data. Writable during normal
|
|
// system operation.
|
|
Var = "/var/"
|
|
// VarLib points to persistent system data.
|
|
VarLib = Var + "lib/"
|
|
// VarEmpty points to a nonstandard directory that is usually empty.
|
|
VarEmpty = Var + "empty/"
|
|
|
|
// Dev points to the root directory for device nodes.
|
|
Dev = "/dev/"
|
|
// DevShm is the place for POSIX shared memory segments, as created via
|
|
// shm_open(3).
|
|
DevShm = "/dev/shm/"
|
|
// Proc points to a virtual kernel file system exposing the process list and
|
|
// other functionality.
|
|
Proc = "/proc/"
|
|
// ProcSys points to a hierarchy below /proc/ that exposes a number of
|
|
// kernel tunables.
|
|
ProcSys = Proc + "sys/"
|
|
// ProcSelf resolves to the process's own /proc/pid directory.
|
|
ProcSelf = Proc + "self/"
|
|
// ProcSelfExe is a symbolic link to program pathname.
|
|
ProcSelfExe = ProcSelf + "exe"
|
|
// Sys points to a virtual kernel file system exposing discovered devices
|
|
// and other functionality.
|
|
Sys = "/sys/"
|
|
)
|