mirror of
https://github.com/Ponce/slackbuilds
synced 2024-11-24 10:02:29 +01:00
network/hostsblock: Added (ad/malware-blocking cron script).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
parent
f21bd1fd8e
commit
b68cc21916
6 changed files with 194 additions and 0 deletions
15
network/hostsblock/README
Normal file
15
network/hostsblock/README
Normal file
|
@ -0,0 +1,15 @@
|
|||
Hostsblock is a bash script for Linux designed to take advantage of the
|
||||
/etc/hosts file to provide system-wide blocking of internet advertisements,
|
||||
malicious domains, trackers, and other undesirable content. To do so, it
|
||||
downloads a configurable set of blocklists and processes and their entries into
|
||||
a singular file.
|
||||
|
||||
The SlackBuild assumes that dnsmasq is not available so it will configure
|
||||
hostsblock to overwrite the current /etc/hosts file. The install script will
|
||||
backup the current /etc/hosts file to /etc/hostsblock/hosts.head if it does
|
||||
not already exist.
|
||||
|
||||
After uninstalling hostsblock, you should copy hosts.head back to /etc/hosts.
|
||||
|
||||
To have hostsblock automatically update /etc/hosts once a week, run:
|
||||
ln -sf /usr/sbin/hostsblock /etc/cron.weekly/hostsblock
|
19
network/hostsblock/doinst.sh
Normal file
19
network/hostsblock/doinst.sh
Normal file
|
@ -0,0 +1,19 @@
|
|||
config() {
|
||||
NEW="$1"
|
||||
OLD="$(dirname $NEW)/$(basename $NEW .new)"
|
||||
# If there's no config file by that name, mv it over:
|
||||
if [ ! -r $OLD ]; then
|
||||
mv $NEW $OLD
|
||||
elif [ "$(cat $OLD | md5sum)" = "$(cat $NEW | md5sum)" ]; then
|
||||
# toss the redundant copy
|
||||
rm $NEW
|
||||
fi
|
||||
# Otherwise, we leave the .new copy for the admin to consider...
|
||||
}
|
||||
|
||||
config etc/hostsblock/rc.conf.new
|
||||
|
||||
# backup existing /etc/hosts to /etc/hostsblock/hosts.head if it doesn't already exist
|
||||
if [ ! -r /etc/hostsblock/hosts.head ] ; then
|
||||
cp /etc/hosts /etc/hostsblock/hosts.head
|
||||
fi
|
79
network/hostsblock/hostsblock.SlackBuild
Normal file
79
network/hostsblock/hostsblock.SlackBuild
Normal file
|
@ -0,0 +1,79 @@
|
|||
#!/bin/sh
|
||||
|
||||
# SlackBuild script for hostsblock
|
||||
|
||||
# Copyright 2013 Benjamin Trigona-Harany <slackbuilds@jaxartes.net>
|
||||
# All rights reserved.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are
|
||||
# met:
|
||||
#
|
||||
# * Redistributions of source code must retain the above copyright
|
||||
# notice, this list of conditions and the following disclaimer.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
||||
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
||||
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
||||
# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
||||
# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
||||
# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
||||
# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
||||
# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
||||
# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
||||
# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
|
||||
PRGNAM=hostsblock
|
||||
VERSION=${VERSION:-0.12.3}
|
||||
BUILD=${BUILD:-1}
|
||||
TAG=${TAG:-_SBo}
|
||||
|
||||
if [ -z "$ARCH" ]; then
|
||||
case "$( uname -m )" in
|
||||
i?86) ARCH=i486 ;;
|
||||
arm*) ARCH=arm ;;
|
||||
*) ARCH=$( uname -m ) ;;
|
||||
esac
|
||||
fi
|
||||
|
||||
CWD=$(pwd)
|
||||
TMP=${TMP:-/tmp/SBo}
|
||||
PKG=$TMP/package-$PRGNAM
|
||||
OUTPUT=${OUTPUT:-/tmp}
|
||||
ARCH="noarch"
|
||||
|
||||
set -e
|
||||
|
||||
rm -rf $PKG
|
||||
mkdir -p $TMP $PKG $OUTPUT
|
||||
cd $TMP
|
||||
rm -rf $PRGNAM-$VERSION
|
||||
tar xvf $CWD/$PRGNAM-$VERSION.tar.bz2
|
||||
cd $PRGNAM-$VERSION
|
||||
chown -R root:root .
|
||||
find -L . \
|
||||
\( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
|
||||
-o -perm 511 \) -exec chmod 755 {} \; -o \
|
||||
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
|
||||
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
|
||||
|
||||
# set up to not use dnsmasq by default
|
||||
patch -p1 --verbose < $CWD/no-dnsmasq.patch
|
||||
|
||||
install -Dm755 hostsblock.sh $PKG/usr/sbin/hostsblock
|
||||
install -Dm755 hostsblock-urlcheck.sh $PKG/usr/sbin/hostsblock-urlcheck
|
||||
install -Dm644 rc.conf $PKG/etc/hostsblock/rc.conf.new
|
||||
install -Dm644 black.list $PKG/etc/hostsblock/black.list
|
||||
install -Dm644 white.list $PKG/etc/hostsblock/white.list
|
||||
|
||||
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cp -a README.md $PKG/usr/doc/$PRGNAM-$VERSION
|
||||
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
|
||||
|
||||
mkdir -p $PKG/install
|
||||
cat $CWD/slack-desc > $PKG/install/slack-desc
|
||||
cat $CWD/doinst.sh > $PKG/install/doinst.sh
|
||||
|
||||
cd $PKG
|
||||
/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
|
10
network/hostsblock/hostsblock.info
Normal file
10
network/hostsblock/hostsblock.info
Normal file
|
@ -0,0 +1,10 @@
|
|||
PRGNAM="hostsblock"
|
||||
VERSION="0.12.3"
|
||||
HOMEPAGE="http://gaenserich.github.io/hostsblock/"
|
||||
DOWNLOAD="http://jaxartes.net/files/hostsblock-0.12.3.tar.bz2"
|
||||
MD5SUM="20eb8ee8627c0980f57d54727b6bd797"
|
||||
DOWNLOAD_x86_64=""
|
||||
MD5SUM_x86_64=""
|
||||
REQUIRES=""
|
||||
MAINTAINER="Benjamin Trigona-Harany"
|
||||
EMAIL="slackbuilds@jaxartes.net"
|
52
network/hostsblock/no-dnsmasq.patch
Normal file
52
network/hostsblock/no-dnsmasq.patch
Normal file
|
@ -0,0 +1,52 @@
|
|||
diff -Nur hostsblock-0.12.3/rc.conf hostsblock-0.12.3a/rc.conf
|
||||
--- hostsblock-0.12.3/rc.conf 2013-10-31 09:02:49.000000000 -0700
|
||||
+++ hostsblock-0.12.3a/rc.conf 2013-12-27 19:33:54.592390930 -0800
|
||||
@@ -34,8 +34,7 @@
|
||||
# blocklists. If not using a dns caching daemon like dnsmasq, this should be
|
||||
# /etc/hosts. Include hosts file entries which you want to maintain in the
|
||||
# "hostshead" entry, such as your loopback device (e.g. 127.0.0.1 localhosts)
|
||||
-hostsfile="/etc/hosts.block"
|
||||
-#hostsfile="/etc/hosts" # If not using a dns caching daemon
|
||||
+hostsfile="/etc/hosts" # If not using a dns caching daemon
|
||||
|
||||
# REDIRECT URL. Url to which blocked hosts will be redirect, either 0.0.0.0 or
|
||||
# 127.0.0.1. This replaces any entries to 0.0.0.0 and 127.0.0.1. If you run a
|
||||
@@ -56,17 +55,9 @@
|
||||
# "addn-hosts=/etc/hosts.block", where /etc/hosts.block is your final hosts file
|
||||
# (see the "hostsfile" variable). This routine will be also run whenever changes
|
||||
# are made via hostsblock-urlcheck.
|
||||
-postprocess(){ #
|
||||
- /etc/rc.d/dnsmasq restart # For dnsmasq under initscripts
|
||||
-} #
|
||||
-
|
||||
-#postprocess(){ #
|
||||
-# systemctl restart dnsmasq.service # For dnsmasq under systemd
|
||||
-#} #
|
||||
-
|
||||
-#postprocess(){ #
|
||||
-# /bin/true # If not using a dns caching daemon
|
||||
-#} #
|
||||
+postprocess(){ #
|
||||
+ /bin/true # If not using a dns caching daemon
|
||||
+} #
|
||||
|
||||
# HEAD FILE. File containing hosts file entries which you want at the beginning
|
||||
# of the resultant hosts file, e.g. for loopback devices and IPV6 entries. Use
|
||||
@@ -74,8 +65,7 @@
|
||||
# /etc/hosts so as to preserve your loopback devices. Give hostshead="0" to
|
||||
# disable this feature. For those targeting /etc/hosts, it is advisable to copy
|
||||
# their old /etc/hosts file to this file so as to preserve existing entries.
|
||||
-hostshead="0"
|
||||
-#hostshead="/etc/hostsblock/hosts.head" # If not using dns caching.
|
||||
+hostshead="/etc/hostsblock/hosts.head" # If not using dns caching.
|
||||
|
||||
# BLACKLISTED SUBDOMAINS. File containing specific subdomains to blacklist which
|
||||
# may not be in the downloaded blacklists. Be sure to provide not just the
|
||||
@@ -106,7 +96,6 @@
|
||||
'http://hosts-file.net/ad_servers.asp' # anti-ads-only version of hpHosts main list (hosts-file.net)
|
||||
## RECOMMENDED LISTS
|
||||
'http://hosts-file.net/hphosts-partial.asp' # hpHosts inter-release (hosts-file.net/)
|
||||
-'http://hostsfile.org/Downloads/BadHosts.unx.zip' # anti-malware (hostsfile.org/hosts.html)
|
||||
'http://hostsfile.mine.nu/Hosts.zip' # anti-ad (hostsfile.mine.nu)
|
||||
'http://someonewhocares.org/hosts/hosts' # anti-ad and anti-malware (someonewhocares.org/hosts/)
|
||||
'http://sysctl.org/cameleon/hosts' # anti-ad (sysctl.org/cameleon/)
|
19
network/hostsblock/slack-desc
Normal file
19
network/hostsblock/slack-desc
Normal file
|
@ -0,0 +1,19 @@
|
|||
# HOW TO EDIT THIS FILE:
|
||||
# The "handy ruler" below makes it easier to edit a package description.
|
||||
# Line up the first '|' above the ':' following the base package name, and
|
||||
# the '|' on the right side marks the last column you can put a character in.
|
||||
# You must make exactly 11 lines for the formatting to be correct. It's also
|
||||
# customary to leave one space after the ':' except on otherwise blank lines.
|
||||
|
||||
|-----handy-ruler------------------------------------------------------|
|
||||
hostsblock: hostsblock (an ad- and malware-blocking cron script for Linux)
|
||||
hostsblock:
|
||||
hostsblock: Hostsblock is a bash script for Linux designed to take advantage of
|
||||
hostsblock: the HOSTS file to provide system-wide blocking of internet
|
||||
hostsblock: advertisements, malicious domains, trackers and other undesirable
|
||||
hostsblock: content. To do so, it downloads a configurable set of blocklists and
|
||||
hostsblock: processes and their entries into a singular HOSTS file.
|
||||
hostsblock:
|
||||
hostsblock:
|
||||
hostsblock:
|
||||
hostsblock:
|
Loading…
Reference in a new issue