ChimeHQ / ProcessEnv

Capture the shell environment of a Foundation app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Build Status Platforms

ProcessEnv

ProcessEnv is a small library for capturing a user's shell configuration. This is very handy for launching Process instances with the same configuration. It also contains a few niceties for working with Process.

Integration

Swift Package Manager:

dependencies: [
    .package(url: "https://github.com/ChimeHQ/ProcessEnv", branch: "main")
]

Extensions

The bulk of code is in the form of extensions on ProcessInfo, for accessing various environment variables. A single [String : String] dictionary of the user's environment is available as the userEnvironment property.

ProcessInfo.processInfo.userEnvironment

ProcessInfo.processInfo.path // $PATH
ProcessInfo.processInfo.homePath
ProcessInfo.processInfo.shellExecutablePath

Contributing and Collaboration

I would love to hear from you! Issues or pull requests work great. A Discord server is also available for live help, but I have a strong bias towards answering in the form of documentation.

I prefer collaboration, and would love to find ways to work together if you have a similar project.

I prefer indentation with tabs for improved accessibility. But, I'd rather you use the system you want and make a PR than hesitate because of whitespace.

By participating in this project you agree to abide by the Contributor Code of Conduct.

About

Capture the shell environment of a Foundation app

License:BSD 3-Clause "New" or "Revised" License


Languages

Language:Swift 100.0%