Browse Source

another test

TheWildJames 3 months ago
parent
commit
6ffcdc272f

+ 4 - 5
.github/actions/bbg/action.yml

@@ -38,8 +38,7 @@ runs:
         echo "BBG_COMMIT=$BBG_COMMIT" >> $GITHUB_ENV
 
     - name: Enable Kernel Configs
-      shell: bash
-      run: |
-        cat >> "${{ github.workspace }}/kernel/common/arch/arm64/configs/gki_defconfig" << 'EOF'
-        CONFIG_BBG=y
-        EOF
+      uses: ./.github/actions/set-kernel-config
+      with:
+        config_list: |
+          CONFIG_BBG=y

+ 11 - 12
.github/actions/droidspaces/action.yml

@@ -67,16 +67,15 @@ runs:
         echo 'EXPORT_SYMBOL_GPL(init_ipc_ns);' >> "${{ github.workspace }}/kernel/common/ipc/msgutil.c"
 
     - name: Enable Kernel Configs
-      shell: bash
-      run: |
-        cat >> "${{ github.workspace }}/kernel/common/arch/arm64/configs/gki_defconfig" << 'EOF'
-        CONFIG_PID_NS=y
-        CONFIG_SYSVIPC=y
-        CONFIG_POSIX_MQUEUE=y
-        CONFIG_IPC_NS=y
-        CONFIG_DEVTMPFS=y
-        CONFIG_BINFMT_MISC=y
-        CONFIG_BINFMT_SCRIPT=y
-        CONFIG_BINFMT_ELF=y
-        EOF
+      uses: ./.github/actions/set-kernel-config
+      with:
+        config_list: |
+          CONFIG_PID_NS=y
+          CONFIG_SYSVIPC=y
+          CONFIG_POSIX_MQUEUE=y
+          CONFIG_IPC_NS=y
+          CONFIG_DEVTMPFS=y
+          CONFIG_BINFMT_MISC=y
+          CONFIG_BINFMT_SCRIPT=y
+          CONFIG_BINFMT_ELF=y
 

+ 4 - 5
.github/actions/kernelsu/action.yml

@@ -64,8 +64,7 @@ runs:
         patch -p1 < static.patch
 
     - name: Enable Kernel Configs
-      shell: bash
-      run: |
-        cat >> "${{ github.workspace }}/kernel/common/arch/arm64/configs/gki_defconfig" << 'EOF'
-        CONFIG_KSU=y
-        EOF
+      uses: ./.github/actions/set-kernel-config
+      with:
+        config_list: |
+          CONFIG_KSU=y

+ 8 - 9
.github/actions/misc/action.yml

@@ -21,12 +21,11 @@ runs:
   using: "composite"
   steps:
     - name: Enable Kernel Configs
-      shell: bash
-      run: |
-        cat >> "${{ github.workspace }}/kernel/common/arch/arm64/configs/gki_defconfig" << 'EOF'
-        CONFIG_OVERLAY_FS=y
-        CONFIG_TMPFS_XATTR=y
-        CONFIG_TMPFS_POSIX_ACL=y
-        CONFIG_KALLSYMS=y
-        CONFIG_KALLSYMS_ALL=y
-        EOF
+      uses: ./.github/actions/set-kernel-config
+      with:
+        config_list: |
+          CONFIG_OVERLAY_FS=y
+          CONFIG_TMPFS_XATTR=y
+          CONFIG_TMPFS_POSIX_ACL=y
+          CONFIG_KALLSYMS=y
+          CONFIG_KALLSYMS_ALL=y

+ 43 - 45
.github/actions/networking/action.yml

@@ -22,52 +22,50 @@ runs:
         set -euo pipefail
         curl -L https://raw.githubusercontent.com/ahmed-alnassif/GKI-Duchamp/dev/kernel-patches/bbrv3/bbrv3.patch | patch -p1
 
-    - name: Add IP SET & IPv6_NAT Support
-      shell: bash
-      run: |
-        cat >> "${{ github.workspace }}/kernel/common/arch/arm64/configs/gki_defconfig" << 'EOF'
-        CONFIG_IP_SET=y
-        CONFIG_IP_SET_MAX=65534
-        CONFIG_IP_SET_BITMAP_IP=y
-        CONFIG_IP_SET_BITMAP_IPMAC=y
-        CONFIG_IP_SET_BITMAP_PORT=y
-        CONFIG_IP_SET_HASH_IP=y
-        CONFIG_IP_SET_HASH_IPMARK=y
-        CONFIG_IP_SET_HASH_IPPORT=y
-        CONFIG_IP_SET_HASH_IPPORTIP=y
-        CONFIG_IP_SET_HASH_IPPORTNET=y
-        CONFIG_IP_SET_HASH_IPMAC=y
-        CONFIG_IP_SET_HASH_MAC=y
-        CONFIG_IP_SET_HASH_NETPORTNET=y
-        CONFIG_IP_SET_HASH_NET=y
-        CONFIG_IP_SET_HASH_NETNET=y
-        CONFIG_IP_SET_HASH_NETPORT=y
-        CONFIG_IP_SET_HASH_NETIFACE=y
-        CONFIG_IP_SET_LIST_SET=y
-        CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
-        CONFIG_NETFILTER_XT_SET=y
-        CONFIG_NETFILTER_XT_TARGET_LOG=y
-        CONFIG_NETFILTER_XT_MATCH_RECENT=y
-        CONFIG_IP6_NF_NAT=y
-        CONFIG_IP6_NF_TARGET_MASQUERADE=y
-        EOF
-
-    - name: Apply TCP Congestion Control
-      shell: bash
-      run: |
-        cat >> "${{ github.workspace }}/kernel/common/arch/arm64/configs/gki_defconfig" << 'EOF'
-        CONFIG_TCP_CONG_ADVANCED=y
-        CONFIG_TCP_CONG_BBR=y
-        CONFIG_TCP_CONG_CUBIC=y
-        CONFIG_TCP_CONG_BIC=y
-        CONFIG_TCP_CONG_WESTWOOD=y
-        CONFIG_TCP_CONG_HTCP=y
-        CONFIG_DEFAULT_BBR=y
-        CONFIG_DEFAULT_TCP_CONG="bbr"
-        CONFIG_NET_SCH_FQ=y
-        CONFIG_NET_SCH_FQ_CODEL=y
-        EOF
+    - name: Enable Kernel Configs
+      uses: ./.github/actions/set-kernel-config
+      with:
+        config_list: |
+          CONFIG_IP_SET=y
+          CONFIG_IP_SET_MAX=65534
+          CONFIG_IP_SET_BITMAP_IP=y
+          CONFIG_IP_SET_BITMAP_IPMAC=y
+          CONFIG_IP_SET_BITMAP_PORT=y
+          CONFIG_IP_SET_HASH_IP=y
+          CONFIG_IP_SET_HASH_IPMARK=y
+          CONFIG_IP_SET_HASH_IPPORT=y
+          CONFIG_IP_SET_HASH_IPPORTIP=y
+          CONFIG_IP_SET_HASH_IPPORTNET=y
+          CONFIG_IP_SET_HASH_IPMAC=y
+          CONFIG_IP_SET_HASH_MAC=y
+          CONFIG_IP_SET_HASH_NETPORTNET=y
+          CONFIG_IP_SET_HASH_NET=y
+          CONFIG_IP_SET_HASH_NETNET=y
+          CONFIG_IP_SET_HASH_NETPORT=y
+          CONFIG_IP_SET_HASH_NETIFACE=y
+          CONFIG_IP_SET_LIST_SET=y
+          CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=y
+          CONFIG_NETFILTER_XT_SET=y
+          CONFIG_NETFILTER_XT_TARGET_LOG=y
+          CONFIG_NETFILTER_XT_MATCH_RECENT=y
+          CONFIG_IP6_NF_NAT=y
+          CONFIG_IP6_NF_TARGET_MASQUERADE=y
 
+    - name: Enable Kernel Configs
+      uses: ./.github/actions/set-kernel-config
+      with:
+        config_list: |
+          CONFIG_TCP_CONG_ADVANCED=y
+          CONFIG_TCP_CONG_BBR=y
+          CONFIG_TCP_CONG_CUBIC=y
+          CONFIG_TCP_CONG_BIC=y
+          CONFIG_TCP_CONG_WESTWOOD=y
+          CONFIG_TCP_CONG_HTCP=y
+          CONFIG_DEFAULT_BBR=y
+          CONFIG_DEFAULT_TCP_CONG="bbr"
+          CONFIG_NET_SCH_FQ=y
+          CONFIG_NET_SCH_FQ_CODEL=y
+        
     - name: Apply Kernel Config for 5.10
       shell: bash
       working-directory: ${{ github.workspace }}/kernel/common

+ 34 - 45
.github/actions/set-kernel-config/action.yml

@@ -1,68 +1,57 @@
-# .github/actions/set-kernel-config/action.yml
 name: Set Kernel Config
-description: Applies kernel config values directly using scripts/config (NO fragments)
+description: Patch gki_defconfig directly (add or modify entries)
+
+inputs:
+  config_list:
+    required: true
+    description: "Kernel config lines"
 
 runs:
   using: composite
   steps:
-  - name: Apply configs
+  - name: Patch gki_defconfig
     shell: bash
     working-directory: ${{ github.workspace }}/kernel/common
     run: |
       set -euo pipefail
 
-      make O=/home/runner/out gki_defconfig AARCH=arm64
-
-      CONFIG_FILE="/home/runner/out/.config"
-      CONFIG_LIST="${{ github.workspace }}/wild_gki.fragment"
+      DEFCONFIG="arch/arm64/configs/gki_defconfig"
+      CONFIG_LIST="${{ inputs.config_list }}"
 
-      if [ ! -f scripts/config ]; then
-        echo "ERROR: common/scripts/config not found"
+      if [ ! -f "$DEFCONFIG" ]; then
+        echo "ERROR: gki_defconfig not found"
         exit 1
       fi
 
-      if [ ! -f "$CONFIG_FILE" ]; then
-        echo "ERROR: config file not found: $CONFIG_FILE"
-        exit 1
-      fi
+      apply_line() {
+        local line="$1"
+        line="$(echo "$line" | xargs)"
 
-      if [ ! -f "$CONFIG_LIST" ]; then
-        echo "ERROR: config list file not found: $CONFIG_LIST"
-        exit 1
-      fi
+        # skip empty/comments
+        [[ -z "$line" || "$line" == \#* ]] && return
 
-      apply_config() {
-        local input="$1"
-
-        # trim whitespace
-        input="$(echo "$input" | xargs)"
-
-        # skip empty lines and comments
-        [[ -z "$input" || "$input" == \#* ]] && return
-
-        if [[ "$input" == *"="* ]]; then
-          local config="${input%%=*}"
-          local value="${input#*=}"
+        local key value
+        if [[ "$line" == *"="* ]]; then
+          key="${line%%=*}"
+          value="${line#*=}"
         else
-          local config="$input"
-          local value="y"
+          key="$line"
+          value="y"
         fi
 
-        echo "Setting: $config=$value"
+        echo "Processing: $key=$value"
 
-        case "$value" in
-          y|Y|yes|YES|1|true|TRUE)
-            scripts/config --file "$CONFIG_FILE" -e "$config"
-            ;;
-          n|N|no|NO|0|false|FALSE)
-            scripts/config --file "$CONFIG_FILE" -d "$config"
-            ;;
-          *)
-            scripts/config --file "$CONFIG_FILE" --set-val "$config" "$value"
-            ;;
-        esac
+        # if config exists anywhere in file → replace it
+        if grep -q "^$key=" "$DEFCONFIG"; then
+          sed -i "s|^$key=.*|$key=$value|g" "$DEFCONFIG"
+        elif grep -q "^# $key is not set" "$DEFCONFIG"; then
+          sed -i "s|^# $key is not set|$key=$value|g" "$DEFCONFIG"
+        else
+          # not present → append
+          echo "$key=$value" >> "$DEFCONFIG"
+        fi
       }
 
       while IFS= read -r line || [ -n "$line" ]; do
-        apply_config "$line"
-      done < "$CONFIG_LIST"
+        apply_line "$line"
+      done <<< "$CONFIG_LIST"

+ 14 - 15
.github/actions/susfs/action.yml

@@ -43,21 +43,20 @@ runs:
           git checkout "$SUSFS_COMMIT"
         fi
 
-    - name: Enable KernelSU SUSFS Config
-      shell: bash
-      run: |
-        cat >> "${{ github.workspace }}/kernel/common/arch/arm64/configs/gki_defconfig" << 'EOF'
-        CONFIG_KSU_SUSFS=y
-        CONFIG_KSU_SUSFS_SUS_PATH=y
-        CONFIG_KSU_SUSFS_SUS_MOUNT=y
-        CONFIG_KSU_SUSFS_SUS_KSTAT=y
-        CONFIG_KSU_SUSFS_SPOOF_UNAME=y
-        CONFIG_KSU_SUSFS_ENABLE_LOG=y
-        CONFIG_KSU_SUSFS_HIDE_KSU_SUSFS_SYMBOLS=y
-        CONFIG_KSU_SUSFS_SPOOF_CMDLINE_OR_BOOTCONFIG=y
-        CONFIG_KSU_SUSFS_OPEN_REDIRECT=y
-        CONFIG_KSU_SUSFS_SUS_MAP=y
-        EOF
+    - name: Enable Kernel Configs
+      uses: ./.github/actions/set-kernel-config
+      with:
+        config_list: |
+          CONFIG_KSU_SUSFS=y
+          CONFIG_KSU_SUSFS_SUS_PATH=y
+          CONFIG_KSU_SUSFS_SUS_MOUNT=y
+          CONFIG_KSU_SUSFS_SUS_KSTAT=y
+          CONFIG_KSU_SUSFS_SPOOF_UNAME=y
+          CONFIG_KSU_SUSFS_ENABLE_LOG=y
+          CONFIG_KSU_SUSFS_HIDE_KSU_SUSFS_SYMBOLS=y
+          CONFIG_KSU_SUSFS_SPOOF_CMDLINE_OR_BOOTCONFIG=y
+          CONFIG_KSU_SUSFS_OPEN_REDIRECT=y
+          CONFIG_KSU_SUSFS_SUS_MAP=y
 
     - name: Apply Kernel SUSFS Patches
       shell: bash