{
"info": {
"author": "Chris Haumesser",
"author_email": "chris.haumesser@gmail.com",
"bugtrack_url": null,
"classifiers": [
"License :: OSI Approved :: MIT License",
"Natural Language :: English",
"Operating System :: POSIX",
"Programming Language :: Python :: 3.6",
"Programming Language :: Python :: 3.7",
"Topic :: Internet"
],
"description": "bound\n=====\n\n``bound`` pulls data from `The Big Blocklist\nCollection `__ and generates an\n`unbound `__ configuration file\nthat refuses lookup of the selected domains.\n\nThis is useful for blocking ads and malware, in much the same way as\n`pi-hole `__. You might prefer this method over\npi-hole if:\n\n- you're already using unbound\n- you don't love dnsmasq (which pi-hole is based on)\n- you don't think a DNS resolver should require a web server\n- you distrust thousands of lines of bash to make major changes to your\n system\n\nIf the above don't apply to you, or you're looking for an opinionated,\nad-blocking resolver with a pretty user interface and automated\ninstaller, `pi-hole `__ is probably what you want.\n\nRequirements\n------------\n\n1. a gnu/linux or \\*bsd operating system\n2. a working unbound installation\n3. python3.6+ (for debian-like systems:\n ``sudo apt-get install python3``)\n4. python3 `requests `__ library (for\n debian-like systems: ``sudo apt-get install python3-requests``)\n\nInstallation\n------------\n\n``python setup.py install``\n\nUsage\n-----\n\n``bound`` is intended to be used with blocklists from `The Big Blocklist\nCollection `__.\n\nRun without any options, ``bound`` will:\n\n1. download the latest \"ticked\" list from the Big Blocklist Collection\n2. download all of the blocklists listed in the \"ticked\" list\n3. parse, deduplicate, and assemble a list of domains from the retrieved\n blocklists\n4. remove any safelisted domains from the list\n5. write ``/etc/unbound/unbound.conf.d/blocklist.conf`` to configure\n unbound for blocking the listed domains\n6. check the unbound configuration, and exit in case of any errors\n7. restart unbound\n\nTo accomplish the above, you will probably need to run ``bound`` as the\nroot user.\n\nThere are options that support running as a non-root user, as well as\nspecifying the blocklist URL, an optional safelist URL, and local\nblocklist and safelist files.\n\nFor a description of all the options, run ``bound -h``.\n\nSupported File Formats\n----------------------\n\n``bound`` supports blocklists and safelists in the following formats:\n\none domain per line\n~~~~~~~~~~~~~~~~~~~\n\n::\n\n advanbusiness.com\n aoldaily.com\n aolon1ine.com\n applesoftupdate.com\n arrowservice.net\n\none domain per line, with inline comments\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n::\n\n quantummetric.com # Cydia/Bigboss\n cydia.saurik.com.cdngc.net # Cydia/Bigboss\n production-ultimate-assets.ratecity.com.au # NewsCorp\n saber.srvcs.tumblr.com # Tumblr\n fd-fp3.wg1.b.yahoo.com # Tumblr\n\nhosts file format\n~~~~~~~~~~~~~~~~~\n\n::\n\n 127.0.0.1 0koryu0.easter.ne.jp\n 127.0.0.1 109-204-26-16.netconnexion.managedbroadband.co.uk\n 127.0.0.1 1866809.securefastserver.com\n 127.0.0.1 2amsports.com\n 127.0.0.1 4dexports.com\n\nsingle-digit hosts file format\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\n::\n\n 0 1app.blob.core.windows.net\n 0 2912a.v.fwmrm.net\n 0 29773.v.fwmrm.net\n 0 5be16.v.fwmrm.net\n 0 888casino.com\n\n\n\n",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/wryfi/bound",
"keywords": "",
"license": "",
"maintainer": "",
"maintainer_email": "",
"name": "bound",
"package_url": "https://pypi.org/project/bound/",
"platform": "",
"project_url": "https://pypi.org/project/bound/",
"project_urls": {
"Homepage": "https://github.com/wryfi/bound"
},
"release_url": "https://pypi.org/project/bound/1.0.1/",
"requires_dist": [
"certifi (==2019.9.11)",
"chardet (==3.0.4)",
"idna (==2.8)",
"requests (==2.22.0)",
"urllib3 (==1.25.6)"
],
"requires_python": "",
"summary": "spam/scam domain blacklisting for unbound",
"version": "1.0.1"
},
"last_serial": 5932869,
"releases": {
"1.0.1": [
{
"comment_text": "",
"digests": {
"md5": "30d779cf0cb5c0155c349db5c73c0f07",
"sha256": "ea32297c4b1698f3130129fb63e83617d24692434cf99c0a9cd74f439d13a923"
},
"downloads": -1,
"filename": "bound-1.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "30d779cf0cb5c0155c349db5c73c0f07",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 8060,
"upload_time": "2019-10-05T19:07:27",
"url": "https://files.pythonhosted.org/packages/e0/81/3631c9f410038826e5d4157f99048600bc33478988232c39c9758ee2e712/bound-1.0.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "ac7595f007c87b0db99f501f5bab1e4b",
"sha256": "d1f36cbe7d7aa5f7955043db799b8f35d5d0174888bec3b711049fecafca8730"
},
"downloads": -1,
"filename": "bound-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "ac7595f007c87b0db99f501f5bab1e4b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9779,
"upload_time": "2019-10-05T19:07:30",
"url": "https://files.pythonhosted.org/packages/e5/33/a08bc17894434d7f8f999f22c0fac352ed5a836c1ee357f615174c86ea97/bound-1.0.1.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "30d779cf0cb5c0155c349db5c73c0f07",
"sha256": "ea32297c4b1698f3130129fb63e83617d24692434cf99c0a9cd74f439d13a923"
},
"downloads": -1,
"filename": "bound-1.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "30d779cf0cb5c0155c349db5c73c0f07",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 8060,
"upload_time": "2019-10-05T19:07:27",
"url": "https://files.pythonhosted.org/packages/e0/81/3631c9f410038826e5d4157f99048600bc33478988232c39c9758ee2e712/bound-1.0.1-py3-none-any.whl"
},
{
"comment_text": "",
"digests": {
"md5": "ac7595f007c87b0db99f501f5bab1e4b",
"sha256": "d1f36cbe7d7aa5f7955043db799b8f35d5d0174888bec3b711049fecafca8730"
},
"downloads": -1,
"filename": "bound-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "ac7595f007c87b0db99f501f5bab1e4b",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 9779,
"upload_time": "2019-10-05T19:07:30",
"url": "https://files.pythonhosted.org/packages/e5/33/a08bc17894434d7f8f999f22c0fac352ed5a836c1ee357f615174c86ea97/bound-1.0.1.tar.gz"
}
]
}