{"id":18013425,"url":"https://github.com/milly/runtray-ps","last_synced_at":"2025-03-26T16:32:02.280Z","repository":{"id":64665334,"uuid":"551647479","full_name":"Milly/runtray-ps","owner":"Milly","description":"Run any console program in the notification area.","archived":false,"fork":false,"pushed_at":"2023-07-19T14:39:24.000Z","size":94,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-19T22:15:53.139Z","etag":null,"topics":["cli","gui","windows"],"latest_commit_sha":null,"homepage":"","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Milly.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-10-14T20:13:39.000Z","updated_at":"2024-09-01T06:13:23.000Z","dependencies_parsed_at":"2024-10-30T03:53:50.469Z","dependency_job_id":null,"html_url":"https://github.com/Milly/runtray-ps","commit_stats":null,"previous_names":[],"tags_count":11,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Milly%2Fruntray-ps","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Milly%2Fruntray-ps/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Milly%2Fruntray-ps/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Milly%2Fruntray-ps/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Milly","download_url":"https://codeload.github.com/Milly/runtray-ps/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245692763,"owners_count":20657000,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","gui","windows"],"created_at":"2024-10-30T03:21:30.804Z","updated_at":"2025-03-26T16:32:02.255Z","avatar_url":"https://github.com/Milly.png","language":"PowerShell","funding_links":[],"categories":[],"sub_categories":[],"readme":"# runtray-ps\n\nA long-running console program can be run in the notification area.\n\nConfigure detailed settings in the [JSON configuration file](#json-configuration-file).\n\n## Supported platforms\n\n`runtray.ps1` can run on Windows platforms with PowerShell 3.0 and .NET Framework 4.5 or later versions installed.\n\n[Windows PowerShell system requirements](https://learn.microsoft.com/powershell/scripting/windows-powershell/install/windows-powershell-system-requirements)  \nPreinstalled since Windows 8.\n\n## Installation\n\n### Unblock downloaded file\n\nUsers should unblock files downloaded from the Internet so that Windows does not block access to the files.\n\n#### With GUI\n\n1. Download `runtray.ps1`.\n2. Right-click the file and select **Properties** from the context menu.\n3. On the **General** tab of the file properties dialog, check the **Unblock** option.\n\n#### With CLI\n\nUse PowerShell's [`Unblock-File`][] cmdlet.\n\n    powershell -NoProfile -Command Unblock-File \"path\\to\\runtray.ps1\"\n\n[`Unblock-File`]: https://learn.microsoft.com/powershell/module/microsoft.powershell.utility/unblock-file\n\n### Use `runtray.ps1` as bundle\n\n1. Download `runtray.ps1` and [Unblock](#unblock-downloaded-file).\n2. Copy the ps1 file and write a [JSON configuration file](#json-configuration-file) with the same name to the same folder.\n\n       C:\\my\\app\\my-application.ps1\n       C:\\my\\app\\my-application.json\n\n3. Run install command.\n\n       powershell -NoProfile -ExecutionPolicy RemoteSigned C:\\my\\app\\my-application.ps1 install\n\n### Use `runtray.ps1` as global\n\n1. Download `runtray.ps1` to any folder and [Unblock](#unblock-downloaded-file).\n\n       C:\\my\\program\\runtray.ps1\n\n2. Write a [JSON configuration file](#json-configuration-file) and put it in any folder.\n\n       C:\\my\\app\\my-application.json\n\n3. Run install command.\n\n       powershell -NoProfile -ExecutionPolicy RemoteSigned C:\\my\\program\\runtray.ps1 install -ConfigPath C:\\my\\app\\my-application.json\n\n## Start application\n\nThe shortcut is installed to the Startup folder, so it will automatically start when you log on to Windows.\n\nAlternatively, you can launch it with the script `start` command.\n\n## Usage\n\n### Command line\n\n```powershell\npowershell -NoProfile -ExecutionPolicy RemoteSigned .\\runtray.ps1 \u003cCommand\u003e [Option ...]\n```\n\n| Command   | Description\n| -------   | -----------\n| start     | Start the executable from shortcut.\n| stop      | Stop the service.\n| restart   | Stop and start the service.\n| install   | Install shortcut to the startup folder.\n| uninstall | Remove shortcut from the startup folder.\n| run       | Start the executable in current terminal. For internal or debug.\n\n| Option             | Description\n| ------             | -----------\n| -ConfigPath `file` | JSON configuration file path.\n| -GUI               | Enable GUI mode.\n| -PassThru          | Returns an object in some command.\n\n### JSON configuration file\n\nNote that backslashes must be escaped within the JSON string.\n\nExample::\n```json\n{\n    \"name\": \"ping-local\",\n    \"description\": \"Pinging localhost continuously.\",\n    \"executable\": \"%WinDir%\\\\System32\\\\ping.exe\",\n    \"arguments\": [\"-t\", \"127.0.0.1\"],\n    \"workingdirectory\": \"%USERPROFILE%\",\n    \"shutdownwait\": 2000,\n    \"autorestart\": true\n}\n```\n\n| Element            | Required | Type     | Default | Description\n| -------            | -------- | ----     | ------- | -----------\n| $.name             | No       | string   | [^1]    | Used for the shortcut filename and the program title.\n| $.description      | No       | string   | `\"\"`    | Written in the description field of the shortcut.\n| $.executable       | Yes      | string   |         | Path to the executable. [^2]\n| $.arguments        | No       | string[] | `[]`    | Arguments of the executable. [^2]\n| $.workingdirectory | No       | string   | `\".\"`   | Path to the working directory. [^2]\n| $.shutdownwait     | No       | int      | `2000`  | Wait time in milliseconds after sending \u003ckbd\u003eCtrl-C\u003c/kbd\u003e.\n| $.autorestart      | No       | bool     | `false` | Auto-restart when service is terminated.\n\n[^1]: The base name of the configuration file without the extension is used.\n[^2]: Replace `%name%` in the string with the value of the environment variable with the specified name.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmilly%2Fruntray-ps","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmilly%2Fruntray-ps","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmilly%2Fruntray-ps/lists"}