{"id":17725590,"url":"https://github.com/benwainwright/reithd","last_synced_at":"2025-03-31T14:20:28.698Z","repository":{"id":91083913,"uuid":"199090011","full_name":"benwainwright/reithd","owner":"benwainwright","description":"Never have to think about Reith ever again...","archived":false,"fork":false,"pushed_at":"2020-02-07T15:16:43.000Z","size":533,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2023-02-28T07:51:46.508Z","etag":null,"topics":["bbc","daemon","macosx","proxy","reith"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/benwainwright.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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":"2019-07-26T23:06:29.000Z","updated_at":"2020-02-07T15:16:46.000Z","dependencies_parsed_at":null,"dependency_job_id":"3a7501d6-20fe-430a-ab7f-e67b4e35d534","html_url":"https://github.com/benwainwright/reithd","commit_stats":null,"previous_names":[],"tags_count":8,"template":null,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benwainwright%2Freithd","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benwainwright%2Freithd/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benwainwright%2Freithd/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/benwainwright%2Freithd/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/benwainwright","download_url":"https://codeload.github.com/benwainwright/reithd/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246481004,"owners_count":20784458,"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":["bbc","daemon","macosx","proxy","reith"],"created_at":"2024-10-25T16:04:57.688Z","updated_at":"2025-03-31T14:20:28.675Z","avatar_url":"https://github.com/benwainwright.png","language":"Swift","readme":"#  reithd\n\nThis project is a daemon for mac users that automatically reconfigures the user's system when connecting and disconnecting to the BBC corporate network (\"Reith\")\n\n## Install\n\nInstall via homebrew as follows\n\n```\nbrew tap benwainwright/tools https://github.com/benwainwright/reithd\nbrew install reithd\n```\n\nThis will install reithd as a homebrew service. You can start and stop the service with `brew services start reithd` and `brew services stop reithd`. See the below sections for details of how to configure your shell and SSH setup to work with reithd\n\n## What does it do?\n\nWhen running, the daemon monitors the System Configuration database looking for changes in your DNS setup. When one occurrs, it will detect whether the new connection is a Reith network connection and reconfigure your system accordingly\n\n### Network Location\n\nYour network location will be switched to \"BBC On Network\" or \"BBC Off Network\" appropriately\n\n### Shell\n\nAll shells that are configured to use reithd will automatically have their environment reconfigured with the correct proxy environment variables _immediately and transparently_. In order to configure your shell, you will need to insert the following line somewhere in your `~/.zshrc` or `~/.bashrc` file:\n\n```bash\neval \"$(reithd shell)\"\n```\n#### How this works\n\nThis will inject a script into your shell startup which creates and removes pid files in `~/.reithd` when shell process starts up and shuts down respectively. When a change is detected, `reithd` will check this folder, collect the pid numbers and send `SIGUSR1` or `SIGUSR2` signals to each configured shell proccess. The injected shell startup script configures your shell to respond to these signals by either removing or adding proxy variables.\n\n### Spotify\n\nIf you have Spotify installed, your preferences will be automatically edited to include the Reith proxy address. You'll still need to restart Spotify though (I'm considering adding an automatic restart)\n\n### SSH\n\nReithd will generate a file called `~/.ssh/config.reith.socks` and automatically comment out or uncomment any lines starting with `ProxyCommand` when the network changes. You can make use of this file by inserting the line\n\n```bash\ninclude ~/.ssh/config.reith.socks\n```\n\nanywhere in your `~/.ssh/config` file\n\n\n\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbenwainwright%2Freithd","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbenwainwright%2Freithd","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbenwainwright%2Freithd/lists"}