{"id":15056754,"url":"https://github.com/loreneteval/sysproxy","last_synced_at":"2025-04-10T04:35:21.352Z","repository":{"id":180336992,"uuid":"664972627","full_name":"LorenEteval/sysproxy","owner":"LorenEteval","description":"Python bindings for shadowsocks sysproxy utility.","archived":false,"fork":false,"pushed_at":"2024-12-23T15:04:19.000Z","size":17,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-02-02T19:51:29.642Z","etag":null,"topics":["cpp","proxy","pybind11","python","shadowsocks"],"latest_commit_sha":null,"homepage":"","language":"C++","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/LorenEteval.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":"2023-07-11T06:53:04.000Z","updated_at":"2024-12-23T15:03:56.000Z","dependencies_parsed_at":null,"dependency_job_id":"4b7a4fd9-c8d7-4737-8f10-efe4d2974fb8","html_url":"https://github.com/LorenEteval/sysproxy","commit_stats":null,"previous_names":["loreneteval/sysproxy"],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LorenEteval%2Fsysproxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LorenEteval%2Fsysproxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LorenEteval%2Fsysproxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/LorenEteval%2Fsysproxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/LorenEteval","download_url":"https://codeload.github.com/LorenEteval/sysproxy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":239140094,"owners_count":19588334,"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":["cpp","proxy","pybind11","python","shadowsocks"],"created_at":"2024-09-24T21:56:01.197Z","updated_at":"2025-02-16T14:31:11.548Z","avatar_url":"https://github.com/LorenEteval.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# sysproxy\n\n[![Deploy PyPI](https://github.com/LorenEteval/sysproxy/actions/workflows/deploy-pypi.yml/badge.svg?branch=main)](https://github.com/LorenEteval/sysproxy/actions/workflows/deploy-pypi.yml)\n\nPython bindings for shadowsocks sysproxy utility. This is a Windows-only package.\n\n## Install\n\n```\npip install sysproxy\n```\n\n## API\n\n```pycon\n\u003e\u003e\u003e import sysproxy\n\u003e\u003e\u003e sysproxy.off() # Turn proxy settings off.\nTrue\n\u003e\u003e\u003e sysproxy.pac('pac_url') # Turn proxy settings on with PAC.\nTrue\n\u003e\u003e\u003e sysproxy.set('127.0.0.1:10809', '127.*;10.*;172.16.*') # Turn proxy settings on with server and bypass.\nTrue\n\u003e\u003e\u003e sysproxy.daemon_off() # Turn proxy daemon off.\nTrue\n\u003e\u003e\u003e sysproxy.daemon_on_() # Turn proxy daemon on. You should launch this function in a Python thread.\n```\n\n## sysproxy daemon\n\nWhen sysproxy daemon turned on, it executes a window-less WINAPI event loop that captures `WM_QUERYENDSESSION` message,\nwhich is sent when Windows is about to shutdown. When the message arrives, the daemon calls `off()`, which turns proxy\nsettings off.\n\nAs mentioned above, `sysproxy.daemon_on_()` will block current Python execution, so you should launch it in a Python\nthread.\n\n## Tested Platform\n\nsysproxy works on all reasonable Windows platform with all Python version(Python 3).\n\nBelow are tested build in [github actions](https://github.com/LorenEteval/sysproxy/actions).\n\n| Platform     | Python 3.6-Python 3.11 |\n|--------------|:----------------------:|\n| windows-2019 |   :heavy_check_mark:   |\n| windows-2022 |   :heavy_check_mark:   |\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floreneteval%2Fsysproxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Floreneteval%2Fsysproxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Floreneteval%2Fsysproxy/lists"}