summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid P <megver83@parabola.nu>2018-05-19 20:10:40 -0400
committerDavid P <megver83@parabola.nu>2018-05-19 20:11:24 -0400
commitfa8cefede3f1ba7602c52f52e8f17cae74492e68 (patch)
treedb8296ad7efa373e76de3f70fe04bca11ff05b69
parentba31b0c5c1a7fd41eea1c78dfb63af3d13654f4b (diff)
Add run.sh script, and versions directory
Signed-off-by: David P <megver83@parabola.nu>
-rwxr-xr-xrun.sh75
-rw-r--r--versions/4.1650
2 files changed, 125 insertions, 0 deletions
diff --git a/run.sh b/run.sh
new file mode 100755
index 0000000..a85c634
--- /dev/null
+++ b/run.sh
@@ -0,0 +1,75 @@
+#!/bin/bash
+# Copyright (C) David P. <megver83@parabola.nu>
+# Look for CONFIG lines which try to enable blobs
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+
+set -e
+
+version=$1
+args=${@#$1}
+
+usage() {
+cat <<EOM
+Usage: ${0##*/} [VERSION] [FILE1] [FILE2] ...
+Where VERSION should be the kernel version and FILE the config file(s).
+Example: ${0##*/} 4.14 /usr/src/linux-4.14/.config
+
+To see a list of available versions, look at the files under the 'versions'
+directory.
+EOM
+}
+
+err() {
+ printf '%sError:%s %s\n' \
+ "$(tput setaf 1)" \
+ "$(tput sgr0)" \
+ "$1"
+ false
+}
+
+check() {
+ if [ ! -f versions/$version ] &> /dev/null; then
+ err "Version $version not available"
+ fi
+
+ if [[ $args != "" ]]; then
+ for f in $args; do
+ [ -f $f ] || err "$f does not exist"
+ done
+ else
+ err 'No config files provided'
+ fi
+}
+
+deblob() {
+ local configs=$(grep -v ^# versions/$version)
+ for c in $configs; do
+ sed -i "s|$c=|# $c is not set|" $i
+ done
+}
+
+main(){
+ check
+ for i in $@; do
+ echo "Modifying $i"
+ deblob $i
+ done
+}
+
+if [ -s $1 ]; then
+ usage
+else
+ main $args
+fi
diff --git a/versions/4.16 b/versions/4.16
new file mode 100644
index 0000000..f2fc8e6
--- /dev/null
+++ b/versions/4.16
@@ -0,0 +1,50 @@
+# DRM_RADEON and DRM_AMDGPU are not blocked since
+# those have needed modules for their xf86-video drivers
+CONFIG_ATH10K
+CONFIG_ATH6KL
+CONFIG_B43
+CONFIG_B43LEGACY
+CONFIG_BRCMSMAC
+CONFIG_BT_ATH3K
+CONFIG_BT_BCM
+CONFIG_BT_HCIBTUSB
+CONFIG_BT_HCIUART_AG6XX
+CONFIG_BT_HCIUART_ATH3K
+CONFIG_BT_HCIUART_BCM
+CONFIG_BT_HCIUART_INTEL
+CONFIG_BT_HCIUART_LL
+CONFIG_BT_HCIUART_QCA
+CONFIG_BT_QCA
+CONFIG_CHELSIO_T3
+CONFIG_COMEDI_JR3_PCI
+#CONFIG_DRM_AMDGPU
+CONFIG_DRM_AMDGPU_CIK
+CONFIG_DRM_AMDGPU_SI
+#CONFIG_DRM_RADEON
+CONFIG_IWLWIFI
+CONFIG_LIQUIDIO
+CONFIG_LIQUIDIO
+CONFIG_MICROCODE_AMD
+CONFIG_MICROCODE_INTEL
+CONFIG_MMC_VUB300
+CONFIG_MOUSE_ELAN_I2C
+CONFIG_MYRI10GE
+CONFIG_NFP
+CONFIG_RADIO_WL128X
+CONFIG_RT2800PCI
+CONFIG_SND_ASIHPI
+CONFIG_SND_PCXHR
+CONFIG_TIGON3
+CONFIG_TI_ST
+CONFIG_TOUCHSCREEN_ELAN
+CONFIG_TOUCHSCREEN_GOODIX
+CONFIG_TOUCHSCREEN_HIDEEP
+CONFIG_TOUCHSCREEN_MELFAS_MIP4
+CONFIG_TOUCHSCREEN_RM_TS
+CONFIG_TOUCHSCREEN_SILEAD
+CONFIG_USB_CXACRU
+CONFIG_USB_IRDA
+CONFIG_USB_SERIAL_MXUPORT
+CONFIG_USB_SERIAL_TI
+CONFIG_USB_SPEEDTOUCH
+CONFIG_VIDEO_BT848