# test_package will run on the `script` step.
# test_package call make download check for very new/modified package
test_packages2() {
+ local commit_range=$TRAVIS_COMMIT_RANGE
+ if [ "$TRAVIS_PULL_REQUEST" = false ]; then
+ echo_blue "Using only the latest commit, since we're not in a Pull Request"
+ commit_range=HEAD~1
+ fi
+
# search for new or modified packages. PKGS will hold a list of package like 'admin/muninlite admin/monit ...'
- PKGS=$(git diff --diff-filter=d --name-only "$TRAVIS_COMMIT_RANGE" | grep 'Makefile$' | grep -v '/files/' | awk -F'/Makefile' '{ print $1 }')
+ PKGS=$(git diff --diff-filter=d --name-only "$commit_range" | grep 'Makefile$' | grep -v '/files/' | awk -F'/Makefile' '{ print $1 }')
if [ -z "$PKGS" ] ; then
echo_blue "No new or modified packages found!"
test_commits() {
RET=0
+ if [ "$TRAVIS_PULL_REQUEST" = false ]; then
+ echo_blue "Skipping commits tests (not in a Pull Request)"
+ return 0
+ fi
for commit in $(git rev-list ${TRAVIS_COMMIT_RANGE/.../..}); do
echo_blue "=== Checking commit '$commit'"
if git show --format='%P' -s $commit | grep -qF ' '; then
env
echo_blue "=== Travis ENV"
-while true; do
- # if clone depth is too small, git rev-list / diff return incorrect or empty results
- C="$(git rev-list ${TRAVIS_COMMIT_RANGE/.../..} | tail -n1)" 2>/dev/null
- [ -n "$C" -a "$C" != "a22de9b74cf9579d1ce7e6cf1845b4afa4277b00" ] && break
- echo_blue "Fetching 50 commits more"
- git fetch origin --deepen=50
-done
-
-if [ "$TRAVIS_PULL_REQUEST" = false ] ; then
- echo "Only Pull Requests are supported at the moment." >&2
- exit 0
+if [ -z "$TRAVIS_COMMIT_RANGE" ] && [ "$TRAVIS_PULL_REQUEST" = true ] ; then
+ echo_red "TRAVIS_COMMIT_RANGE variable is empty in a Pull Request"
+ exit 1
fi
+if [ "$TRAVIS_PULL_REQUEST" = true ]; then
+ while true; do
+ # if clone depth is too small, git rev-list / diff return incorrect or empty results
+ C="$(git rev-list ${TRAVIS_COMMIT_RANGE/.../..} | tail -n1)" 2>/dev/null
+ [ -n "$C" -a "$C" != "a22de9b74cf9579d1ce7e6cf1845b4afa4277b00" ] && break
+ echo_blue "Fetching 50 commits more"
+ git fetch origin --deepen=50
+ done
+fi
if [ $# -ne 1 ] ; then
cat <<EOF
PKG_NAME:=php
PKG_VERSION:=7.1.12
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_MAINTAINER:=Michael Heimpold <mhei@heimpold.de>
ifneq ($(SDK)$(CONFIG_PACKAGE_php7-mod-imap),)
CONFIGURE_ARGS+= \
--with-imap=shared,"$(STAGING_DIR)/usr" \
- --with-imap-ssl
+ --with-imap-kerberos=no \
+ --with-imap-ssl="$(STAGING_DIR)/usr"
else
CONFIGURE_ARGS+= --without-imap
endif
$(eval $(call BuildModule,gmp,GMP,+PACKAGE_php7-mod-gmp:libgmp))
$(eval $(call BuildModule,hash,Hash))
$(eval $(call BuildModule,iconv,iConv,$(ICONV_DEPENDS)))
-$(eval $(call BuildModule,imap,IMAP,+PACKAGE_php7-mod-imap:libopenssl +PACKAGE_php7-mod-imap:uw-imap))
+$(eval $(call BuildModule,imap,IMAP,+PACKAGE_php7-mod-imap:libopenssl +PACKAGE_libpam:libpam +PACKAGE_php7-mod-imap:uw-imap))
$(eval $(call BuildModule,intl,Internationalization Functions,+PACKAGE_php7-mod-intl:icu))
$(eval $(call BuildModule,json,JSON))
$(eval $(call BuildModule,ldap,LDAP,+PACKAGE_php7-mod-ldap:libopenldap +PACKAGE_php7-mod-ldap:libsasl2))
define Build/InstallDev
$(INSTALL_DIR) $(1)/usr/lib \
- $(1)/usr/include
+ $(1)/usr/include/c-client
$(CP) $(PKG_BUILD_DIR)/c-client/libc-client.so.$(PKG_VERSION) $(1)/usr/lib/
$(LN) libc-client.so.$(PKG_VERSION) $(1)/usr/lib/libc-client.so
- $(CP) $(PKG_BUILD_DIR)/c-client/*.h $(1)/usr/include/
+ $(CP) $(PKG_BUILD_DIR)/c-client/linkage.h $(1)/usr/include/c-client/
+ $(CP) $(PKG_BUILD_DIR)/src/c-client/*.h $(1)/usr/include/c-client/
+ $(CP) $(PKG_BUILD_DIR)/src/osdep/unix/*.h $(1)/usr/include/c-client/
+ $(LN) os_slx.h $(1)/usr/include/c-client/osdep.h
endef
define Package/uw-imap/install
include $(TOPDIR)/rules.mk
PKG_NAME:=ffmpeg
-PKG_VERSION:=3.2.8
+PKG_VERSION:=3.2.9
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=https://ffmpeg.org/releases/
-PKG_HASH:=42e7362692318afc666f14378dd445effa9a1b09787504a6ab5811fe442674cd
+PKG_HASH:=1131d37890ed3dcbc3970452b200a56ceb36b73eaa51d1c23c770c90f928537f
PKG_MAINTAINER:=Ted Hess <thess@kitschensync.net>, \
Ian Leonard <antonlacon@gmail.com>
$(patsubst %,CONFIG_FFMPEG_CUSTOM_PARSER_%,$(FFMPEG_CUSTOM_PARSERS)) \
$(patsubst %,CONFIG_FFMPEG_CUSTOM_PROTOCOL_%,$(FFMPEG_CUSTOM_PROTOCOLS))
+PKG_BUILD_DEPENDS:= \
+ PACKAGE_shine:shine \
+ PACKAGE_libx264:libx264 \
+ PACKAGE_lame-lib:lame-lib \
+ PACKAGE_libopus:libopus
+
include $(INCLUDE_DIR)/package.mk
define Package/ffmpeg/Default
endef
+# Package build suppressed when CONFIG_ALL=y
define Package/libffmpeg-custom
$(call Package/libffmpeg/Default)
TITLE+= (custom)
- DEPENDS+= +FFMPEG_CUSTOM_SELECT_libopus:libopus \
+ DEPENDS+= @!ALL \
+ +FFMPEG_CUSTOM_SELECT_libopus:libopus \
+PACKAGE_libx264:libx264 +PACKAGE_lame-lib:lame-lib \
+FFMPEG_CUSTOM_SELECT_libshine:shine \
+PACKAGE_fdk-aac:fdk-aac
$(eval $(call BuildPackage,libffmpeg-audio-dec))
$(eval $(call BuildPackage,libffmpeg-full))
$(eval $(call BuildPackage,libffmpeg-mini))
-ifneq ($(CONFIG_ALL),y)
- $(eval $(call BuildPackage,libffmpeg-custom))
-endif
+$(eval $(call BuildPackage,libffmpeg-custom))
include $(TOPDIR)/rules.mk
PKG_NAME:=gst1-libav
-PKG_VERSION:=1.8.2
-PKG_RELEASE:=2
+PKG_VERSION:=1.10.5
+PKG_RELEASE:=1
PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
Ted Hess <thess@kitschensync.net>
PKG_SOURCE:=gst-libav-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-libav
-PKG_HASH:=b5f3c7a27b39b5f5c2f0bfd546b0c655020faf6b38d27b64b346c43e5ebf687a
+PKG_HASH:=e4d2f315f478d47281fbfdfbd590a63d23704ca37911d7142d5992616f4b28d3
PKG_LICENSE:=GPL-2.0 LGPL-2.0
PKG_LICENSE_FILES:=COPYING COPYING.LIB
CONFIGURE_ARGS += \
--without-system-libav \
- --with-libav-extra-configure="--target-os=linux \
- $(if $(findstring " ",$(CONFIG_CPU_TYPE)),,--cpu=$(CONFIG_CPU_TYPE)) \
--disable-bsfs \
--disable-programs \
--disable-devices \
include $(TOPDIR)/rules.mk
PKG_NAME:=gst1-plugins-bad
-PKG_VERSION:=1.8.2
+PKG_VERSION:=1.10.5
PKG_RELEASE:=1
PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-bad-$(PKG_VERSION)
PKG_SOURCE:=gst-plugins-bad-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-bad/
-PKG_HASH:=d7995317530c8773ec088f94d9320909d41da61996b801ebacce9a56af493f97
+PKG_HASH:=c5806040bb83b43be86ce592e6a19c5d83d7776f7d9f434eb4b911c4efff3573
-PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base
+PKG_BUILD_DEPENDS:= libgstreamer1 gst1-plugins-base libgst1basecamerabinsrc libgst1photography libgst1adaptivedemux libgst1uridownloader libgst1badbase
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
SECTION:=multimedia
TITLE:=GStreamer
URL:=http://gstreamer.freedesktop.org/
- DEPENDS:= +libgstreamer1 $(ICONV_DEPENDS)
+ DEPENDS:= +gst1-plugins-base +libgstreamer1 +libgst1pbutils $(ICONV_DEPENDS)
endef
define Package/gstreamer1-bad/description/Default
--- a/configure.ac
+++ b/configure.ac
-@@ -3717,7 +3717,6 @@ ext/x265/Makefile
- ext/xvid/Makefile
+@@ -3841,7 +3841,6 @@ ext/xvid/Makefile
ext/zbar/Makefile
ext/dtls/Makefile
+ ext/webrtcdsp/Makefile
-po/Makefile.in
docs/Makefile
docs/plugins/Makefile
--- a/configure.ac
+++ b/configure.ac
-@@ -3617,38 +3617,6 @@ sys/wasapi/Makefile
+@@ -3739,37 +3739,6 @@ sys/wasapi/Makefile
sys/wininet/Makefile
sys/winks/Makefile
sys/winscreencap/Makefile
-tests/examples/gl/generic/doublecube/Makefile
-tests/examples/gl/generic/recordgraphic/Makefile
-tests/examples/gl/gtk/Makefile
--tests/examples/gl/gtk/gtkvideooverlay/Makefile
-tests/examples/gl/gtk/3dvideo/Makefile
-tests/examples/gl/gtk/filternovideooverlay/Makefile
-tests/examples/gl/gtk/filtervideooverlay/Makefile
include $(TOPDIR)/rules.mk
PKG_NAME:=gst1-plugins-base
-PKG_VERSION:=1.8.2
+PKG_VERSION:=1.10.5
PKG_RELEASE:=1
PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-base-$(PKG_VERSION)
PKG_SOURCE:=gst-plugins-base-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-base/
-PKG_HASH:=9d7109c8fb0a5dec8edb17b0053c59a46aba7ddf48dc48ea822ebbbd4339d38d
+PKG_HASH:=1c401a79bd1e4521c6ef1b66579bddedd9136e164e54792aab4bfcf3485bf9a7
PKG_BUILD_DEPENDS:= libgstreamer1
PKG_CONFIG_DEPENDS:= \
--- a/configure.ac
+++ b/configure.ac
-@@ -929,7 +929,6 @@ docs/design/Makefile
+@@ -963,7 +963,6 @@ docs/design/Makefile
docs/libs/Makefile
docs/plugins/Makefile
docs/version.entities
--- a/configure.ac
+++ b/configure.ac
-@@ -907,23 +907,6 @@ pkgconfig/gstreamer-video.pc
+@@ -940,24 +940,6 @@ pkgconfig/gstreamer-video.pc
pkgconfig/gstreamer-video-uninstalled.pc
pkgconfig/gstreamer-plugins-base.pc
pkgconfig/gstreamer-plugins-base-uninstalled.pc
-tests/examples/Makefile
-tests/examples/app/Makefile
-tests/examples/audio/Makefile
+-tests/examples/decodebin_next/Makefile
-tests/examples/dynamic/Makefile
-tests/examples/encoding/Makefile
-tests/examples/fft/Makefile
--- a/configure.ac
+++ b/configure.ac
-@@ -907,11 +907,6 @@ pkgconfig/gstreamer-video.pc
+@@ -940,11 +940,6 @@ pkgconfig/gstreamer-video.pc
pkgconfig/gstreamer-video-uninstalled.pc
pkgconfig/gstreamer-plugins-base.pc
pkgconfig/gstreamer-plugins-base-uninstalled.pc
include $(TOPDIR)/rules.mk
PKG_NAME:=gst1-plugins-good
-PKG_VERSION:=1.8.2
+PKG_VERSION:=1.10.5
PKG_RELEASE:=1
PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-good-$(PKG_VERSION)
PKG_SOURCE:=gst-plugins-good-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-good/
-PKG_HASH:=8d7549118a3b7a009ece6bb38a05b66709c551d32d2adfd89eded4d1d7a23944
+PKG_HASH:=be053f6ed716eeb517cec148cec637cdce571c6e04d5c21409e2876fb76c7639
-PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base
+PKG_BUILD_DEPENDS:= libgstreamer1 gst1-plugins-base
PKG_FIXUP:=autoreconf
PKG_INSTALL:=1
SECTION:=multimedia
TITLE:=GStreamer
URL:=http://gstreamer.freedesktop.org/
- DEPENDS:= +libgstreamer1 $(ICONV_DEPENDS)
+ DEPENDS:= +libgstreamer1 +libgst1pbutils $(ICONV_DEPENDS)
endef
define Package/gstreamer1-good/description/Default
--- a/configure.ac
+++ b/configure.ac
-@@ -1049,7 +1049,6 @@ sys/sunaudio/Makefile
+@@ -1061,7 +1061,6 @@ sys/sunaudio/Makefile
sys/v4l2/Makefile
sys/waveform/Makefile
sys/ximage/Makefile
--- a/configure.ac
+++ b/configure.ac
-@@ -1049,21 +1049,6 @@ sys/sunaudio/Makefile
+@@ -1061,21 +1061,6 @@ sys/sunaudio/Makefile
sys/v4l2/Makefile
sys/waveform/Makefile
sys/ximage/Makefile
--- a/configure.ac
+++ b/configure.ac
-@@ -1052,9 +1052,6 @@ sys/ximage/Makefile
+@@ -1064,9 +1064,6 @@ sys/ximage/Makefile
common/Makefile
common/m4/Makefile
m4/Makefile
include $(TOPDIR)/rules.mk
PKG_NAME:=gst1-plugins-ugly
-PKG_VERSION:=1.8.2
+PKG_VERSION:=1.10.5
PKG_RELEASE:=1
PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
PKG_BUILD_DIR:=$(BUILD_DIR)/gst-plugins-ugly-$(PKG_VERSION)
PKG_SOURCE:=gst-plugins-ugly-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gst-plugins-ugly/
-PKG_HASH:=9c5b33a2a98fc1d6d6c99a1b536b1fb2de45f53cc8bf8ab85a8b8141fed1a8ac
+PKG_HASH:=d6edc046350809c967f5b058c5c2e534d99d1d69fe1b26acd849e87781a7d7fc
PKG_BUILD_DEPENDS:= libgstreamer1 gstreamer1-plugins-base
PKG_CONFIG_DEPENDS:= \
-diff -u --recursive gst-plugins-ugly-1.6.2-vanilla/configure.ac gst-plugins-ugly-1.6.2/configure.ac
---- gst-plugins-ugly-1.6.2-vanilla/configure.ac 2016-01-01 10:47:06.333623730 -0500
-+++ gst-plugins-ugly-1.6.2/configure.ac 2016-01-01 10:47:20.211613708 -0500
-@@ -470,7 +470,6 @@
- tests/Makefile
+--- a/configure.ac
++++ b/configure.ac
+@@ -482,7 +482,6 @@ tests/Makefile
tests/check/Makefile
+ tests/files/Makefile
m4/Makefile
-po/Makefile.in
pkgconfig/Makefile
pkgconfig/gstreamer-plugins-ugly-uninstalled.pc
gst-plugins-ugly.spec
-diff -u --recursive gst-plugins-ugly-1.6.2-vanilla/Makefile.am gst-plugins-ugly-1.6.2/Makefile.am
---- gst-plugins-ugly-1.6.2-vanilla/Makefile.am 2016-01-01 10:47:06.333623730 -0500
-+++ gst-plugins-ugly-1.6.2/Makefile.am 2016-01-01 10:47:14.523210855 -0500
+--- a/Makefile.am
++++ b/Makefile.am
@@ -1,7 +1,7 @@
DISTCHECK_CONFIGURE_FLAGS=--enable-gtk-doc
include $(TOPDIR)/rules.mk
PKG_NAME:=gstreamer1
-PKG_VERSION:=1.8.2
+PKG_VERSION:=1.10.5
PKG_RELEASE:=1
PKG_MAINTAINER:=W. Michael Petullo <mike@flyn.org> \
PKG_BUILD_DIR:=$(BUILD_DIR)/gstreamer-$(PKG_VERSION)
PKG_SOURCE:=gstreamer-$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=http://gstreamer.freedesktop.org/src/gstreamer/
-PKG_HASH:=9dbebe079c2ab2004ef7f2649fa317cabea1feb4fb5605c24d40744b90918341
+PKG_HASH:=bc06243600817f637029da29d089d5908d1d266542f68bf6626a10c5f05f1f1d
PKG_FIXUP:=autoreconf
PKG_REMOVE_FILES:=autogen.sh aclocal.m4
./usr/include/gstreamer-$(GST_VERSION)/* \
$(1)/usr/include/gstreamer-$(GST_VERSION)/ \
)
- $(INSTALL_DIR) $(1)/usr/lib/gstreamer-$(GST_VERSION)/include/gst
- ( cd $(PKG_INSTALL_DIR); $(CP) \
- ./usr/lib/gstreamer-$(GST_VERSION)/include/gst/*.h \
- $(1)/usr/lib/gstreamer-$(GST_VERSION)/include/gst \
- )
$(INSTALL_DIR) $(1)/usr/lib
( cd $(PKG_INSTALL_DIR); $(CP) \
./usr/lib/libgst*-$(GST_VERSION).{a,la,so*} \
--- a/configure.ac
+++ b/configure.ac
-@@ -998,7 +998,6 @@ libs/gst/net/Makefile
+@@ -1047,7 +1047,6 @@ libs/gst/net/Makefile
plugins/Makefile
plugins/elements/Makefile
plugins/tracers/Makefile
--- a/configure.ac
+++ b/configure.ac
-@@ -998,21 +998,6 @@ libs/gst/net/Makefile
+@@ -1047,21 +1047,6 @@ libs/gst/net/Makefile
plugins/Makefile
plugins/elements/Makefile
plugins/tracers/Makefile
--- a/configure.ac
+++ b/configure.ac
-@@ -1001,18 +1001,6 @@ plugins/tracers/Makefile
+@@ -1050,18 +1050,6 @@ plugins/tracers/Makefile
tools/Makefile
common/Makefile
common/m4/Makefile
include $(TOPDIR)/rules.mk
PKG_NAME:=adblock
-PKG_VERSION:=3.1.0
-PKG_RELEASE:=2
+PKG_VERSION:=3.1.1
+PKG_RELEASE:=1
PKG_LICENSE:=GPL-3.0+
PKG_MAINTAINER:=Dirk Brenken <dev@brenken.org>
* minimal status & error logging to syslog, enable debug logging to receive more output
* procd based init system support (start/stop/restart/reload/suspend/resume/query/status)
* procd network interface trigger support or classic time based startup
+* conditional dns backend restarts by old/new blocklist comparison with sha256sum (default) or md5sum
* suspend & resume adblock actions temporarily without blocklist reloading
* output comprehensive runtime information via LuCI or via 'status' init command
* query function to quickly identify blocked (sub-)domains, e.g. for whitelisting
www.adwhere.com
</code></pre>
-**query the active blocklist for a certain (sub-)domain, e.g. for whitelisting:**
+**query the active blocklist for a certain (sub-)domain, e.g. for whitelisting:**
+
The query function checks against the submitted (sub-)domain and recurses automatically to the upper top level domain. For every (sub-)domain it returns the first ten relevant results.
<pre><code>
/etc/init.d/adblock query www.example.google.com
+ www-google-analytics.l.google.com
</code></pre>
-**add a new blocklist source:**
+**add a new blocklist source:**
+
1. the easy way ...
example: https://easylist-downloads.adblockplus.org/rolist+easylist.txt
Adblock already supports an easylist source, called 'reg_ru'. To add the additional local easylist as a new source, copy the existing config source section and change only
#
LC_ALL=C
PATH="/usr/sbin:/usr/bin:/sbin:/bin"
-adb_ver="3.1.0"
+adb_ver="3.1.1"
adb_sysver="unknown"
adb_enabled=0
adb_debug=0
adb_dnsfile="${adb_dnsprefix}.overall"
adb_whitelist="/etc/adblock/adblock.whitelist"
adb_rtfile="/tmp/adb_runtime.json"
+adb_hashsum="$(command -v sha256sum)"
adb_action="${1:-"start"}"
adb_cnt=0
adb_rc=0
;;
esac
- if [ ${adb_enabled} -ne 1 ]
+ # check adblock status
+ #
+ if [ ${adb_enabled} -eq 0 ]
then
if [ -s "${adb_dnsdir}/${adb_dnsfile}" ]
then
f_rmdns
f_dnsrestart
fi
+ f_extconf
f_jsnupdate
f_log "info " "adblock is currently disabled, please set adb_enabled to '1' to use this service"
exit 0
then
f_log "error" "'${adb_dns}' not running, DNS backend not found"
fi
-
- # force dns to local resolver
- #
- if [ ${adb_forcedns} -eq 1 ] && [ -z "$(uci -q get firewall.adblock_dns)" ]
- then
- uci -q set firewall.adblock_dns="redirect"
- uci -q set firewall.adblock_dns.name="Adblock DNS"
- uci -q set firewall.adblock_dns.src="lan"
- uci -q set firewall.adblock_dns.proto="tcp udp"
- uci -q set firewall.adblock_dns.src_dport="53"
- uci -q set firewall.adblock_dns.dest_port="53"
- uci -q set firewall.adblock_dns.target="DNAT"
- elif [ ${adb_forcedns} -eq 0 ] && [ -n "$(uci -q get firewall.adblock_dns)" ]
- then
- uci -q delete firewall.adblock_dns
- fi
- if [ -n "$(uci -q changes firewall)" ]
- then
- uci -q commit firewall
- if [ $(/etc/init.d/firewall enabled; printf "%u" ${?}) -eq 0 ]
- then
- /etc/init.d/firewall reload >/dev/null 2>&1
- fi
- fi
}
# f_envcheck: check/set environment prerequisites
{
local ssl_lib
+ # check external uci config files
+ #
+ f_extconf
+
# check fetch utility
#
ssl_lib="-"
fi
adb_fetchinfo="${adb_fetch##*/} (${ssl_lib})"
+ # check hashsum utility
+ #
+ if [ ! -x "${adb_hashsum}" ]
+ then
+ adb_hashsum="$(command -v md5sum)"
+ fi
+
# initialize temp files and directories
#
adb_tmpload="$(mktemp -tu)"
> "${adb_tmpdir}/tmp.whitelist"
}
+# f_extconf: set external config options
+#
+f_extconf()
+{
+ # kresd related options
+ #
+ if [ "${adb_dns}" = "kresd" ]
+ then
+ if [ ${adb_enabled} -eq 1 ] && [ -z "$(uci -q get resolver.kresd.rpz_file | grep -Fo "${adb_dnsdir}/${adb_dnsfile}")" ]
+ then
+ uci -q add_list resolver.kresd.rpz_file="${adb_dnsdir}/${adb_dnsfile}"
+ elif [ ${adb_enabled} -eq 0 ] && [ -n "$(uci -q get resolver.kresd.rpz_file | grep -Fo "${adb_dnsdir}/${adb_dnsfile}")" ]
+ then
+ uci -q del_list resolver.kresd.rpz_file="${adb_dnsdir}/${adb_dnsfile}"
+ fi
+ if [ -n "$(uci -q changes resolver)" ]
+ then
+ uci -q commit resolver
+ fi
+ fi
+
+ # firewall related options
+ #
+ if [ ${adb_enabled} -eq 1 ] && [ ${adb_forcedns} -eq 1 ] && [ -z "$(uci -q get firewall.adblock_dns)" ]
+ then
+ uci -q set firewall.adblock_dns="redirect"
+ uci -q set firewall.adblock_dns.name="Adblock DNS"
+ uci -q set firewall.adblock_dns.src="lan"
+ uci -q set firewall.adblock_dns.proto="tcp udp"
+ uci -q set firewall.adblock_dns.src_dport="53"
+ uci -q set firewall.adblock_dns.dest_port="53"
+ uci -q set firewall.adblock_dns.target="DNAT"
+ elif [ -n "$(uci -q get firewall.adblock_dns)" ] && ([ ${adb_enabled} -eq 0 ] || [ ${adb_forcedns} -eq 0 ])
+ then
+ uci -q delete firewall.adblock_dns
+ fi
+ if [ -n "$(uci -q changes firewall)" ]
+ then
+ uci -q commit firewall
+ if [ $(/etc/init.d/firewall enabled; printf "%u" ${?}) -eq 0 ]
+ then
+ /etc/init.d/firewall reload >/dev/null 2>&1
+ fi
+ fi
+}
+
# f_rmtemp: remove temporary files & directories
#
f_rmtemp()
if [ ${adb_rc} -gt 0 ]
then
status="error"
- elif [ ${adb_enabled} -ne 1 ]
+ elif [ ${adb_enabled} -eq 0 ]
then
status="disabled"
elif [ -s "${adb_dnsdir}/.${adb_dnsfile}" ]
local mem_total="$(awk '/^MemTotal/ {print int($2/1000)}' "/proc/meminfo")"
f_log "info " "start adblock processing ..."
- f_log "debug" "action: ${adb_action}, dns: ${adb_dns}, fetch: ${adb_fetchinfo}, backup: ${adb_backup}, backup_mode: ${adb_backup_mode}, whitelist_mode: ${adb_whitelist_mode}, force_srt/_dns: ${adb_forcesrt}/${adb_forcedns}, mem_total: ${mem_total}"
+ f_log "debug" "action: ${adb_action}, dns: ${adb_dns}, fetch: ${adb_fetchinfo}, hashsum: ${adb_hashsum}, backup: ${adb_backup}, backup_mode: ${adb_backup_mode}, whitelist_mode: ${adb_whitelist_mode}, force_srt/_dns: ${adb_forcesrt}/${adb_forcedns}, mem_total: ${mem_total}"
> "${adb_rtfile}"
> "${adb_dnsdir}/.${adb_dnsfile}"
# hash preparation, whitelist removal and overall sort
#
- if [ -f "${adb_dnsdir}/${adb_dnsfile}" ]
+ if [ -x "${adb_hashsum}" ] && [ -f "${adb_dnsdir}/${adb_dnsfile}" ]
then
- hash_old="$(sha256sum "${adb_dnsdir}/${adb_dnsfile}" 2>/dev/null | awk '{print $1}')"
+ hash_old="$(${adb_hashsum} "${adb_dnsdir}/${adb_dnsfile}" 2>/dev/null | awk '{print $1}')"
fi
if [ -s "${adb_tmpdir}/${adb_dnsfile}" ]
then
# conditional restart of the dns backend and runtime information export
#
- hash_new="$(sha256sum "${adb_dnsdir}/${adb_dnsfile}" 2>/dev/null | awk '{print $1}')"
+ if [ -x "${adb_hashsum}" ] && [ -f "${adb_dnsdir}/${adb_dnsfile}" ]
+ then
+ hash_new="$(${adb_hashsum} "${adb_dnsdir}/${adb_dnsfile}" 2>/dev/null | awk '{print $1}')"
+ fi
if [ -z "${hash_old}" ] || [ -z "${hash_new}" ] || [ "${hash_old}" != "${hash_new}" ]
then
f_dnsrestart
PKG_NAME:=apache
PKG_VERSION:=2.4.28
-PKG_RELEASE:=1
+PKG_RELEASE:=2
PKG_SOURCE_NAME:=httpd
PKG_MAINTAINER:=Thomas Heil <heil@terminal-consulting.de>
PKG_LICENSE:=Apache License
--- /dev/null
+Description: Make builds reproducible
+ Don't use __DATE__ __TIME__. Use changelog date instead.
+ Sort exported symbols.
+Author: Jean-Michel Vourgère <nirgal@debian.org>
+Forwarded: no
+Last-Update: 2015-08-11
+
+Index: apache2/server/buildmark.c
+===================================================================
+--- apache2.orig/server/buildmark.c
++++ apache2/server/buildmark.c
+@@ -17,11 +17,7 @@
+ #include "ap_config.h"
+ #include "httpd.h"
+
+-#if defined(__DATE__) && defined(__TIME__)
+-static const char server_built[] = __DATE__ " " __TIME__;
+-#else
+-static const char server_built[] = "unknown";
+-#endif
++static const char server_built[] = "";
+
+ AP_DECLARE(const char *) ap_get_server_built()
+ {
+Index: apache2/server/Makefile.in
+===================================================================
+--- apache2.orig/server/Makefile.in
++++ apache2/server/Makefile.in
+@@ -1,3 +1,4 @@
++export LC_ALL = C
+
+ CLEAN_TARGETS = gen_test_char test_char.h \
+ ApacheCoreOS2.def httpd.exp export_files \
+@@ -80,8 +81,8 @@ httpd.exp: exports.c export_vars.h
+ @echo "#! ." > $@
+ @echo "* This file was AUTOGENERATED at build time." >> $@
+ @echo "* Please do not edit by hand." >> $@
+- $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) exports.c | grep "ap_hack_" | grep -v apr_ | sed -e 's/^.*[)]\(.*\);$$/\1/' >> $@
+- $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) export_vars.h | grep -v apr_ | sed -e 's/^\#[^!]*//' | sed -e '/^$$/d' >> $@
++ $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) exports.c | grep "ap_hack_" | grep -v apr_ | sed -e 's/^.*[)]\(.*\);$$/\1/' | sort >> $@
++ $(CPP) $(ALL_CPPFLAGS) $(ALL_INCLUDES) export_vars.h | grep -v apr_ | sed -e 's/^\#[^!]*//' | sed -e '/^$$/d' | sort >> $@
+
+
+ # developer stuff
include $(TOPDIR)/rules.mk
PKG_NAME:=strongswan
-PKG_VERSION:=5.6.0
+PKG_VERSION:=5.6.1
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
-PKG_HASH:=a14dc0d92634ed52730bfc76a76db30943a28ed3c65a560066e1e9f785827b13
+PKG_HASH:=e0c282d8ad418609c5dfb5e8efa01b28b95ef3678070ed47bf2a229f55f4ab53
PKG_SOURCE_URL:=http://download.strongswan.org/ http://download2.strongswan.org/
PKG_LICENSE:=GPL-2.0+
PKG_MAINTAINER:=Stijn Tintel <stijn@linux-ipv6.be>
include $(TOPDIR)/rules.mk
PKG_NAME:=auc
-PKG_VERSION:=0.0.7
+PKG_VERSION:=0.0.8
PKG_RELEASE=1
PKG_LICENSE:=GPL-3.0
*/
#define _GNU_SOURCE
-#define AUC_VERSION "0.0.7"
+#define AUC_VERSION "0.0.8"
#include <fcntl.h>
#include <dlfcn.h>
return ret;
}
+struct jsonblobber {
+ json_tokener *tok;
+ struct blob_buf *outbuf;
+};
+
static void request_done(struct uclient *cl)
{
+ struct jsonblobber *jsb = (struct jsonblobber *)cl->priv;
+ if (jsb) {
+ json_tokener_free(jsb->tok);
+ free(jsb);
+ };
+
uclient_disconnect(cl);
uloop_end();
}
{
char buf[256];
int len;
- json_tokener *tok;
json_object *jsobj;
+ struct blob_buf *outbuf = NULL;
+ json_tokener *tok = NULL;
+ struct jsonblobber *jsb = (struct jsonblobber *)cl->priv;
- struct blob_buf *outbuf = (struct blob_buf *)cl->priv;
-
- if (!outbuf) {
+ if (!jsb) {
while (1) {
len = uclient_read(cl, buf, sizeof(buf));
if (!len)
return;
}
- tok = json_tokener_new();
-
+ outbuf = jsb->outbuf;
+ tok = jsb->tok;
+
while (1) {
len = uclient_read(cl, buf, sizeof(buf));
if (!len)
break;
}
}
-
- json_tokener_free(tok);
}
static void eof_cb(struct uclient *cl)
static int server_request(const char *url, struct blob_buf *inbuf, struct blob_buf *outbuf) {
struct uclient *ucl;
+ struct jsonblobber *jsb = NULL;
int rc = -1;
char *post_data;
out_offset = 0;
uloop_init();
ucl = uclient_new(url, NULL, &check_cb);
+ if (outbuf) {
+ jsb = malloc(sizeof(struct jsonblobber));
+ jsb->outbuf = outbuf;
+ jsb->tok = json_tokener_new();
+ };
+
uclient_http_set_ssl_ctx(ucl, ssl_ops, ssl_ctx, 1);
ucl->timeout_msecs = REQ_TIMEOUT * 1000;
- ucl->priv = outbuf;
+ ucl->priv = jsb;
rc = uclient_connect(ucl);
if (rc)
return rc;
return 0;
}
+static void print_package_updates(struct blob_attr *upgrades) {
+ struct blob_attr *cur;
+ struct blob_attr *tb[2];
+ int rem;
+
+ static struct blobmsg_policy policy[2] = {
+ { .type = BLOBMSG_TYPE_STRING },
+ { .type = BLOBMSG_TYPE_STRING },
+ };
+
+ blobmsg_for_each_attr(cur, upgrades, rem) {
+ blobmsg_parse_array(policy, ARRAY_SIZE(policy), tb, blobmsg_data(cur), blobmsg_data_len(cur));
+ if (!tb[0] || !tb[1])
+ continue;
+
+ fprintf(stdout, "\t%s (%s -> %s)\n", blobmsg_name(cur),
+ blobmsg_get_string(tb[1]), blobmsg_get_string(tb[0]));
+ };
+}
+
/* this main function is too big... todo: split */
int main(int args, char *argv[]) {
+ unsigned char argc=1;
static struct blob_buf checkbuf, reqbuf, imgbuf, upgbuf;
struct ubus_context *ctx = ubus_connect(NULL);
uint32_t id;
char *checksum = NULL;
struct stat imgstat;
- if (args>1 && !strncmp(argv[1], "-d", 3))
- debug = 1;
+ snprintf(user_agent, sizeof(user_agent), "%s (%s)", argv[0], AUC_VERSION);
+ fprintf(stdout, "%s\n", user_agent);
+
+ while (argc<args) {
+ if (!strncmp(argv[argc], "-h", 3) ||
+ !strncmp(argv[argc], "--help", 7)) {
+ fprintf(stdout, "%s: Attended sysUpgrade CLI client\n", argv[0]);
+ fprintf(stdout, "Usage: auc [-d] [-h]\n");
+ fprintf(stdout, " -d\tenable debugging output\n");
+ fprintf(stdout, " -h\toutput help\n");
+ return 0;
+ }
+ if (!strncmp(argv[argc], "-d", 3))
+ debug = 1;
+ argc++;
+ };
if (!ctx) {
fprintf(stderr, "failed to connect to ubus.\n");
blobmsg_buf_init(&imgbuf);
blobmsg_buf_init(&upgbuf);
- snprintf(user_agent, sizeof(user_agent), "%s (%s)", argv[0], AUC_VERSION);
-
- fprintf(stderr, "%s\n", user_agent);
-
if (ubus_lookup_id(ctx, "system", &id) ||
ubus_invoke(ctx, id, "board", NULL, board_cb, &checkbuf, 3000)) {
fprintf(stderr, "cannot request board info from procd\n");
blobmsg_add_u32(&checkbuf, "upgrade_packages", upgrade_packages);
- fprintf(stderr, "running %s %s %s on %s/%s (%s)\n", distribution,
+ fprintf(stdout, "running %s %s %s on %s/%s (%s)\n", distribution,
version, revision, target, subtarget, board_name);
- fprintf(stderr, "checking %s for release upgrade%s\n", serverurl,
+ fprintf(stdout, "checking %s for release upgrade%s\n", serverurl,
upgrade_packages?" or updated packages":"");
blobmsg_add_string(&reqbuf, "distro", distribution);
snprintf(url, sizeof(url), "%s/%s", serverurl, APIOBJ_CHECK);
uptodate=0;
- if (debug)
- fprintf(stderr, "requesting:\n%s\n", blobmsg_format_json_indent(checkbuf.head, true, 0));
-
- retry=0;
do {
+ retry=0;
+ if (debug)
+ fprintf(stderr, "requesting:\n%s\n", blobmsg_format_json_indent(checkbuf.head, true, 0));
if (server_request(url, &checkbuf, &reqbuf)) {
fprintf(stderr, "failed to connect to server\n");
rc=-1;
goto freeboard;
};
+
+ if (retry)
+ sleep(3);
} while(retry);
if (debug)
}
if (tbc[CHECK_VERSION]) {
newversion = blobmsg_get_string(tbc[CHECK_VERSION]);
- fprintf(stderr, "new %s release %s found.\n", distribution, newversion);
+ fprintf(stdout, "new %s release %s found.\n", distribution, newversion);
} else {
- fprintf(stderr, "staying on %s release version %s\n", distribution, version);
+ fprintf(stdout, "staying on %s release version %s\n", distribution, version);
blobmsg_add_string(&reqbuf, "version", version);
};
if (tbc[CHECK_UPGRADES]) {
- fprintf(stderr, "package updates found:\n%s\n",
- blobmsg_format_json_indent(tbc[CHECK_UPGRADES], true, 0));
+ fprintf(stdout, "package updates:\n");
+ print_package_updates(tbc[CHECK_UPGRADES]);
}
+
rc = ask_user();
if (rc)
goto freeboard;
do {
retry = 0;
- if (debug)
+ if (debug && !use_get)
fprintf(stderr, "requesting:\n%s\n", blobmsg_format_json_indent(reqbuf.head, true, 0));
server_request(url, use_get?NULL:&reqbuf, &imgbuf);
}
} while(retry || queuepos);
+ if (debug)
+ fprintf(stderr, "reply:\n%s\n", blobmsg_format_json_indent(imgbuf.head, true, 0));
+
if (!tb[IMAGE_SYSUPGRADE]) {
fprintf(stderr, "no sysupgrade image returned\n");
rc=-1;
}
}
- if (!ubus_lookup_id(ctx, "rpc-sys", &id)) {
- valid = 0;
- ubus_invoke(ctx, id, "upgrade_test", NULL, upgtest_cb, &valid, 3000);
- if (!valid) {
- rc=-1;
- goto freeboard;
- }
-
- blobmsg_add_u8(&upgbuf, "keep", 1);
- fprintf(stderr, "invoking sysupgrade\n");
- ubus_invoke(ctx, id, "upgrade_start", upgbuf.head, NULL, NULL, 3000);
- } else {
+ valid = 0;
+ ubus_invoke(ctx, id, "upgrade_test", NULL, upgtest_cb, &valid, 3000);
+ if (!valid) {
rc=-1;
+ goto freeboard;
}
+ blobmsg_add_u8(&upgbuf, "keep", 1);
+ fprintf(stdout, "invoking sysupgrade\n");
+ ubus_invoke(ctx, id, "upgrade_start", upgbuf.head, NULL, NULL, 3000);
+
freeboard:
free(board_name);
free(target);
include $(TOPDIR)/rules.mk
PKG_NAME:=btrfs-progs
-PKG_VERSION:=4.13.3
+PKG_VERSION:=4.14
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-v$(PKG_VERSION).tar.xz
PKG_SOURCE_URL:=@KERNEL/linux/kernel/people/kdave/btrfs-progs/
-PKG_HASH:=805bdb0031c21a0a5d2ba295a8c9bdd8ba831a68c3fa801aab85677ec902d783
+PKG_HASH:=09095cbc3bc2b6aa9d09c93146fb4d7437c51d2572f6918b74fe990fcdcb91af
PKG_MAINTAINER:=Rosen Penev <rosenp@gmail.com>
PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-v$(PKG_VERSION)
CONFIGURE_ARGS += \
--disable-backtrace \
--disable-convert \
- --disable-documentation
+ --disable-documentation \
+ --disable-zstd
EXTRA_CFLAGS=$(TARGET_CPPFLAGS)
PKG_NAME:=minicom
PKG_VERSION:=2.7
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
PKG_SOURCE_URL:=https://alioth.debian.org/frs/download.php/file/3977/
--- /dev/null
+--- a/src/minicom.c
++++ b/src/minicom.c
+@@ -1159,7 +1159,7 @@ int main(int argc, char **argv)
+ switch(c) {
+ case 'v':
+ printf(_("%s version %s"), PACKAGE, VERSION);
+-#ifdef __DATE__
++#if 0
+ printf(_(" (compiled %s)"), __DATE__);
+ #endif
+ printf("\n");
+@@ -1462,7 +1462,7 @@ int main(int argc, char **argv)
+
+ mc_wprintf(us, "\n%s %s\r\n", _("Welcome to minicom"), VERSION);
+ mc_wprintf(us, "\n%s: %s\r\n", _("OPTIONS"), option_string);
+-#if defined (__DATE__) && defined (__TIME__)
++#if 0
+ mc_wprintf(us, "%s %s, %s.\r\n",_("Compiled on"), __DATE__,__TIME__);
+ #endif
+ {
include $(TOPDIR)/rules.mk
PKG_NAME:=openocd
-PKG_VERSION:=v0.10.0
+PKG_SOURCE_VERSION:=0.10.0
+PKG_VERSION:=v$(PKG_SOURCE_VERSION)
PKG_RELEASE:=1
-PKG_SOURCE_PROTO:=git
-PKG_SOURCE_URL:=git://git.code.sf.net/p/openocd/code
-PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
-PKG_SOURCE_VERSION:=$(PKG_VERSION)
-PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.gz
-PKG_MIRROR_HASH:=ef8a71daa581a3a2296fd3dafff21de2ca7b86319ec3a5c24ed6a216d1fdff45
+PKG_SOURCE_URL:=@SF/openocd
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_SOURCE_VERSION).tar.bz2
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_SOURCE_VERSION)
+PKG_HASH:=7312e7d680752ac088b8b8f2b5ba3ff0d30e0a78139531847be4b75c101316ae
PKG_LICENSE:=GPL-2.0
PKG_LICENSE_FILES:=COPYING
PKG_NAME:=unzip
PKG_REV:=60
PKG_VERSION:=6.0
-PKG_RELEASE:=5
+PKG_RELEASE:=6
PKG_SOURCE:=$(PKG_NAME)$(PKG_REV).tar.gz
PKG_SOURCE_URL:=@SF/infozip
--- /dev/null
+From: Jérémy Bobbio <lunar@debian.org>
+Subject: Remove build date
+Bug-Debian: https://bugs.debian.org/782851
+ In order to make unzip build reproducibly, we remove the
+ (already optional) build date from the binary.
+
+--- a/unix/unix.c
++++ b/unix/unix.c
+@@ -1705,7 +1705,7 @@
+ #endif /* Sun */
+ #endif /* SGI */
+
+-#ifdef __DATE__
++#if 0
+ " on ", __DATE__
+ #else
+ "", ""
PKG_NAME:=zip
PKG_REV:=30
PKG_VERSION:=3.0
-PKG_RELEASE:=3
+PKG_RELEASE:=4
PKG_SOURCE:=$(PKG_NAME)$(PKG_REV).tar.gz
PKG_SOURCE_URL:=@SF/infozip
--- /dev/null
+From: Santiago Vila <sanvila@debian.org>
+Subject: Remove (optional) build date to make the build reproducible
+Bug-Debian: http://bugs.debian.org/779042
+
+--- a/unix/unix.c
++++ b/unix/unix.c
+@@ -1020,7 +1020,7 @@
+
+
+ /* Define the compile date string */
+-#ifdef __DATE__
++#if 0
+ # define COMPILE_DATE " on " __DATE__
+ #else
+ # define COMPILE_DATE ""