Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: RROrg/rr
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 25.1.4
Choose a base ref
...
head repository: RROrg/rr
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: main
Choose a head ref

Commits on Jan 27, 2025

  1. Copy the full SHA
    545bc2a View commit details

Commits on Feb 14, 2025

  1. Copy the full SHA
    79e1c3b View commit details
  2. Copy the full SHA
    7fcb950 View commit details
  3. Copy the full SHA
    7efbd02 View commit details

Commits on Feb 17, 2025

  1. Copy the full SHA
    83d62cc View commit details
  2. Copy the full SHA
    5657c04 View commit details
  3. Copy the full SHA
    20ca9b8 View commit details

Commits on Feb 18, 2025

  1. Copy the full SHA
    b03b7c2 View commit details

Commits on Feb 19, 2025

  1. Copy the full SHA
    72e9d7d View commit details
  2. Copy the full SHA
    4c4ae4e View commit details
  3. Copy the full SHA
    ad74aaf View commit details
  4. Copy the full SHA
    449c81a View commit details
  5. Copy the full SHA
    dbbb5bf View commit details

Commits on Feb 20, 2025

  1. 优化 something

    wjz304 committed Feb 20, 2025
    Copy the full SHA
    5ddf7ee View commit details
  2. Copy the full SHA
    529a593 View commit details
  3. Copy the full SHA
    af6c762 View commit details

Commits on Feb 21, 2025

  1. Copy the full SHA
    da24300 View commit details
  2. 优化 something

    wjz304 committed Feb 21, 2025
    Copy the full SHA
    96c59e1 View commit details
  3. Copy the full SHA
    d73fa4c View commit details
  4. Copy the full SHA
    e71136e View commit details

Commits on Feb 22, 2025

  1. Copy the full SHA
    996196c View commit details

Commits on Feb 27, 2025

  1. fix ... 太多懒得写

    wjz304 committed Feb 27, 2025
    Copy the full SHA
    88a5564 View commit details
  2. Copy the full SHA
    25ff0e9 View commit details

Commits on Feb 28, 2025

  1. Copy the full SHA
    fdbd438 View commit details

Commits on Mar 5, 2025

  1. Copy the full SHA
    e67ce76 View commit details

Commits on Mar 6, 2025

  1. Copy the full SHA
    4641c37 View commit details
  2. Copy the full SHA
    11a5f4d View commit details
  3. Copy the full SHA
    7c0e5ba View commit details
  4. Copy the full SHA
    4f355a7 View commit details
  5. Copy the full SHA
    225492b View commit details

Commits on Mar 7, 2025

  1. Copy the full SHA
    ff3231c View commit details
  2. Copy the full SHA
    98f8c8a View commit details
  3. update 2025-03-07 11:29:13

    github-actions[bot] committed Mar 7, 2025
    Copy the full SHA
    4f0a4b1 View commit details

Commits on Mar 10, 2025

  1. 修复 resp 的引用问题

    wjz304 committed Mar 10, 2025
    Copy the full SHA
    5a1ff80 View commit details
Showing with 8,790 additions and 8,702 deletions.
  1. +108 −109 .github/workflows/data.yml
  2. +21 −19 .github/workflows/issues.yml
  3. +1 −0 .gitignore
  4. +1 −1 VERSION
  5. +58 −38 docs/addons.json
  6. BIN docs/addons.xlsx
  7. +1 −1 docs/issues.html
  8. +2 −2 docs/models.json
  9. BIN docs/models.xlsx
  10. +404 −452 docs/modules.json
  11. BIN docs/modules.xlsx
  12. +18 −406 docs/pats.json
  13. BIN docs/pats.xlsx
  14. +95 −61 files/initrd/opt/rr/boot.sh
  15. +6 −0 files/initrd/opt/rr/bzImage-to-vmlinux.sh
  16. +0 −36 files/initrd/opt/rr/calc_run_size.sh
  17. BIN files/initrd/opt/rr/grub.img.gz
  18. +11 −1 files/initrd/opt/rr/include/addons.sh
  19. +19 −8 files/initrd/opt/rr/include/configFile.sh
  20. +13 −1 files/initrd/opt/rr/include/consts.sh
  21. +3 −0 files/initrd/opt/rr/include/functions.py
  22. +38 −33 files/initrd/opt/rr/include/functions.sh
  23. +9 −1 files/initrd/opt/rr/include/i18n.sh
  24. +56 −41 files/initrd/opt/rr/include/modules.sh
  25. +25 −26 files/initrd/opt/rr/init.sh
  26. +443 −427 files/initrd/opt/rr/lang/ar_SA/LC_MESSAGES/rr.po
  27. +443 −427 files/initrd/opt/rr/lang/de_DE/LC_MESSAGES/rr.po
  28. +438 −422 files/initrd/opt/rr/lang/en_US/LC_MESSAGES/rr.po
  29. +443 −427 files/initrd/opt/rr/lang/es_ES/LC_MESSAGES/rr.po
  30. +443 −427 files/initrd/opt/rr/lang/fr_FR/LC_MESSAGES/rr.po
  31. +443 −427 files/initrd/opt/rr/lang/ja_JP/LC_MESSAGES/rr.po
  32. +443 −427 files/initrd/opt/rr/lang/ko_KR/LC_MESSAGES/rr.po
  33. +470 −454 files/initrd/opt/rr/lang/rr.pot
  34. +443 −427 files/initrd/opt/rr/lang/ru_RU/LC_MESSAGES/rr.po
  35. +443 −427 files/initrd/opt/rr/lang/th_TH/LC_MESSAGES/rr.po
  36. +443 −427 files/initrd/opt/rr/lang/tr_TR/LC_MESSAGES/rr.po
  37. +443 −427 files/initrd/opt/rr/lang/uk_UA/LC_MESSAGES/rr.po
  38. +443 −427 files/initrd/opt/rr/lang/vi_VN/LC_MESSAGES/rr.po
  39. +443 −427 files/initrd/opt/rr/lang/zh_CN/LC_MESSAGES/rr.po
  40. +443 −427 files/initrd/opt/rr/lang/zh_HK/LC_MESSAGES/rr.po
  41. +443 −427 files/initrd/opt/rr/lang/zh_TW/LC_MESSAGES/rr.po
  42. +611 −507 files/initrd/opt/rr/menu.sh
  43. +3 −1 files/initrd/opt/rr/patch/iosched-trampoline.sh
  44. +6 −0 files/initrd/opt/rr/patch/modulelist
  45. +1 −1 files/initrd/opt/rr/platforms.yml
  46. +23 −12 files/initrd/opt/rr/ramdisk-patch.sh
  47. +16 −10 files/initrd/opt/rr/vmlinux-to-bzImage.sh
  48. +10 −4 files/initrd/opt/rr/zimage-patch.sh
  49. +1 −1 files/mnt/p1/RR_VERSION
  50. +20 −0 files/mnt/p1/boot/grub/gfxblacklist.txt
  51. +26 −35 files/mnt/p1/boot/grub/grub.cfg
  52. +19 −9 localbuild.sh
  53. +3 −0 scripts/func.py
  54. +36 −23 scripts/func.sh
  55. +16 −9 sourcebuild.sh
217 changes: 108 additions & 109 deletions .github/workflows/data.yml
Original file line number Diff line number Diff line change
@@ -1,109 +1,108 @@
#
# Copyright (C) 2022 Ing <https://github.com/wjz304>
#
# This is free software, licensed under the MIT License.
# See /LICENSE for more information.
#

name: Data
on:
release:
types:
- created

workflow_dispatch:
inputs:
push:
description: "push"
default: false
type: boolean

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@main
with:
ref: main

- name: Init Env
run: |
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git config --global user.name "github-actions[bot]"
sudo timedatectl set-timezone "Asia/Shanghai"
- name: Delay
run: |
echo "Delaying for 1 minutes..."
sleep 60
- name: Get Release RR
run: |
REPO="${{ github.server_url }}/${{ github.repository }}"
PRERELEASE="true"
TAG=""
if [ "${PRERELEASE}" = "true" ]; then
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
else
LATESTURL="$(curl -skL --connect-timeout 10 -w %{url_effective} -o /dev/null "${REPO}/releases/latest")"
TAG="${LATESTURL##*/}"
fi
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
rm -f rr-${TAG}.img.zip
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${REPO}/releases/download/${TAG}/rr-${TAG}.img.zip" -o "rr-${TAG}.img.zip")
if [ $? -ne 0 ] || [ ${STATUS:-0} -ne 200 ]; then
echo "Download failed"
exit 1
fi
unzip rr-${TAG}.img.zip -d "rr"
export TERM=xterm
sudo ./localbuild.sh create rr/ws rr/rr.img
if [ $? -ne 0 ]; then
echo "create failed"
exit 1
fi
- name: Get data
run: |
sudo apt update
sudo apt install -y locales busybox dialog gettext sed gawk jq curl
sudo apt install -y python-is-python3 python3-pip libelf-dev qemu-utils cpio xz-utils lz4 lzma bzip2 gzip zstd
sudo apt install -y build-essential libtool pkgconf libzstd-dev liblzma-dev libssl-dev # kmodule dependencies
# Backup the original python3 executable.
sudo mv -f "$(realpath $(which python3))/EXTERNALLY-MANAGED" "$(realpath $(which python3))/EXTERNALLY-MANAGED.bak" 2>/dev/null || true
sudo pip3 install -U -r scripts/requirements.txt
python3 scripts/func.py getmodels -w "rr/ws/initrd" -j "docs/models.json" -x "docs/models.xlsx"
python3 scripts/func.py getaddons -w "rr/ws" -j "docs/addons.json" -x "docs/addons.xlsx"
python3 scripts/func.py getmodules -w "rr/ws" -j "docs/modules.json" -x "docs/modules.xlsx"
python3 scripts/func.py getpats -w "rr/ws/initrd" -j "docs/pats.json" -x "docs/pats.xlsx"
- name: Upload to Artifacts
if: success()
uses: actions/upload-artifact@v4
with:
name: docs
path: |
docs/*.json
docs/*.xlsx
retention-days: 5

- name: Check and Push
if: success() && (inputs.push == true || github.event.action == 'created')
run: |
echo "Git push ..."
# git checkout main
git pull
status=$(git status -s | grep -E "docs" | awk '{printf " %s", $2}')
if [ -n "${status}" ]; then
git add ${status}
git commit -m "update $(date +%Y-%m-%d" "%H:%M:%S)"
git push -f
fi
#
# Copyright (C) 2022 Ing <https://github.com/wjz304>
#
# This is free software, licensed under the MIT License.
# See /LICENSE for more information.
#

name: Data
on:
release:
types:
- created

workflow_dispatch:
inputs:
push:
description: "push"
default: false
type: boolean

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@main
with:
ref: main

- name: Init Env
run: |
git config --global user.email "github-actions[bot]@users.noreply.github.com"
git config --global user.name "github-actions[bot]"
sudo timedatectl set-timezone "Asia/Shanghai"
- name: Delay
run: |
echo "Delaying for 1 minutes..."
sleep 60
- name: Get Release RR
run: |
REPO="${{ github.server_url }}/${{ github.repository }}"
PRERELEASE="true"
TAG=""
if [ "${PRERELEASE}" = "true" ]; then
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
else
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${REPO}/releases/latest" | awk -F'/' '{print $NF}')"
fi
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
rm -f rr-${TAG}.img.zip
STATUS=$(curl -kL --connect-timeout 10 -w "%{http_code}" "${REPO}/releases/download/${TAG}/rr-${TAG}.img.zip" -o "rr-${TAG}.img.zip")
if [ $? -ne 0 ] || [ ${STATUS:-0} -ne 200 ]; then
echo "Download failed"
exit 1
fi
unzip rr-${TAG}.img.zip -d "rr"
export TERM=xterm
sudo ./localbuild.sh create rr/ws rr/rr.img
if [ $? -ne 0 ]; then
echo "create failed"
exit 1
fi
- name: Get data
run: |
sudo apt update
sudo apt install -y locales busybox dialog gettext sed gawk jq curl
sudo apt install -y python-is-python3 python3-pip libelf-dev qemu-utils cpio xz-utils lz4 lzma bzip2 gzip zstd
sudo apt install -y build-essential libtool pkgconf libzstd-dev liblzma-dev libssl-dev # kmodule dependencies
# Backup the original python3 executable.
sudo mv -f "$(realpath $(which python3))/EXTERNALLY-MANAGED" "$(realpath $(which python3))/EXTERNALLY-MANAGED.bak" 2>/dev/null || true
sudo pip3 install -U -r scripts/requirements.txt
python3 scripts/func.py getmodels -w "rr/ws/initrd" -j "docs/models.json" -x "docs/models.xlsx"
python3 scripts/func.py getaddons -w "rr/ws" -j "docs/addons.json" -x "docs/addons.xlsx"
python3 scripts/func.py getmodules -w "rr/ws" -j "docs/modules.json" -x "docs/modules.xlsx"
python3 scripts/func.py getpats -w "rr/ws/initrd" -j "docs/pats.json" -x "docs/pats.xlsx"
- name: Upload to Artifacts
if: success()
uses: actions/upload-artifact@v4
with:
name: docs
path: |
docs/*.json
docs/*.xlsx
retention-days: 5

- name: Check and Push
if: success() && (inputs.push == true || github.event.action == 'created')
run: |
echo "Git push ..."
# git checkout main
git pull
status=$(git status -s | grep -E "docs" | awk '{printf " %s", $2}')
if [ -n "${status}" ]; then
git add ${status}
git commit -m "update $(date +%Y-%m-%d" "%H:%M:%S)"
git push -f
fi
40 changes: 21 additions & 19 deletions .github/workflows/issues.yml
Original file line number Diff line number Diff line change
@@ -159,20 +159,23 @@ jobs:
}
function readConfigKey() {
local result=$(sudo yq eval ".${1} | explode(.)" "${2}" 2>/dev/null)
local result
result=$(sudo yq eval ".${1} | explode(.)" "${2}" 2>/dev/null)
[ "${result}" = "null" ] && echo "" || echo "${result}"
}
function mergeConfigModules() {
# Error: bad file '-': cannot index array with '8139cp' (strconv.ParseInt: parsing "8139cp": invalid syntax)
# When the first key is a pure number, yq will not process it as a string by default. The current solution is to insert a placeholder key.
local MS="RRORG\n${1// /\\n}"
local L="$(echo -en "${MS}" | awk '{print "modules."$1":"}')"
local xmlfile=$(mktemp)
echo -en "${L}" | sudo yq -p p -o y >"${xmlfile}"
deleteConfigKey "modules.\"RRORG\"" "${xmlfile}"
sudo yq eval-all --inplace '. as $item ireduce ({}; . * $item)' --inplace "${2}" "${xmlfile}" 2>/dev/null
rm -f "${xmlfile}"
local MS ML XF
MS="RRORG\n${1// /\\n}"
ML="$(echo -en "${MS}" | awk '{print "modules."$1":"}')"
XF=$(mktemp 2>/dev/null)
XF=${XF:-/tmp/tmp.XXXXXXXXXX}
echo -en "${ML}" | sudo yq -p p -o y >"${XF}"
deleteConfigKey "modules.\"RRORG\"" "${XF}"
sudo yq eval-all --inplace '. as $item ireduce ({}; . * $item)' --inplace "${2}" "${XF}" 2>/dev/null
rm -f "${XF}"
}
REPO="${{ github.server_url }}/${{ github.repository }}"
@@ -184,8 +187,7 @@ jobs:
if [ "${PRERELEASE}" = "true" ]; then
TAG="$(curl -skL --connect-timeout 10 "${REPO}/tags" | grep "/refs/tags/.*\.zip" | sed -E 's/.*\/refs\/tags\/(.*)\.zip.*$/\1/' | sort -rV | head -1)"
else
LATESTURL="$(curl -skL --connect-timeout 10 -w %{url_effective} -o /dev/null "${REPO}/releases/latest")"
TAG="${LATESTURL##*/}"
TAG="$(curl -skL --connect-timeout 10 -w "%{url_effective}" -o /dev/null "${REPO}/releases/latest" | awk -F'/' '{print $NF}')"
fi
[ "${TAG:0:1}" = "v" ] && TAG="${TAG:1}"
rm -f rr-${TAG}.img.zip
@@ -266,7 +268,7 @@ jobs:
USER_CONFIG_FILE="rr/ws/mnt/p1/user-config.yml"
{
echo "RR: "
echo " VERSION: $(cat ${RR_VERSION_FILE} 2>/dev/null | head -1)"
echo " VERSION: $(cat "${RR_VERSION_FILE}" 2>/dev/null | head -1)"
echo " CUSTOM: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"
echo
echo "DSM:"
@@ -284,33 +286,33 @@ jobs:
if [ "${{ env.format }}" = "ova" ]; then
. scripts/func.sh "${{ secrets.RRORG }}"
convertova "rr/rr.img" "rr/rr.ova"
(cd rr; sha256sum rr.ova >../sha256sum)
(cd rr && sha256sum rr.ova >../sha256sum)
zip -9 "rr-${MODEL}-${TAG}-${{ github.run_id }}.ova.zip" -j rr/rr.ova ${USER_CONFIG_FILE} sha256sum README.txt
elif [ "${{ env.format }}" = "vmx" ]; then
. scripts/func.sh "${{ secrets.RRORG }}"
convertvmx "rr/rr.img" "rr.vmx" # rr.vmx is a directory
(cd rr.vmx; sha256sum * >../sha256sum)
(cd rr.vmx && sha256sum * >../sha256sum)
zip -9 "rr-${MODEL}-${TAG}-${{ github.run_id }}.vmx.zip" -r rr.vmx ${USER_CONFIG_FILE} sha256sum README.txt
elif [ "${{ env.format }}" = "vmdk" ]; then
qemu-img convert rr/rr.img -O vmdk -o 'adapter_type=lsilogic,subformat=streamOptimized,compat6' rr/rr.vmdk
(cd rr; sha256sum rr.vmdk >../sha256sum)
(cd rr && sha256sum rr.vmdk >../sha256sum)
zip -9 "rr-${MODEL}-${TAG}-${{ github.run_id }}.vmdk.zip" -j rr/rr.vmdk ${USER_CONFIG_FILE} sha256sum README.txt
elif [ "${{ env.format }}" = "flat" ]; then
qemu-img convert rr/rr.img -O vmdk -o 'adapter_type=lsilogic,subformat=monolithicFlat,compat6' rr/rr.vmdk
(cd rr; sha256sum rr*.vmdk >../sha256sum)
(cd rr && sha256sum rr*.vmdk >../sha256sum)
zip -9 "rr-${MODEL}-${TAG}-${{ github.run_id }}.flat.zip" -j rr/rr*.vmdk ${USER_CONFIG_FILE} sha256sum README.txt
elif [ "${{ env.format }}" = "vhd" ]; then
. scripts/func.sh "${{ secrets.RRORG }}"
qemu-img convert rr/rr.img -O vpc rr/rr.vhd
createvmc "rr/rr.vhd" "rr/rr.vmc"
(cd rr; sha256sum rr.vhd >../sha256sum)
(cd rr && sha256sum rr.vhd >../sha256sum)
zip -9 "rr-${MODEL}-${TAG}-${{ github.run_id }}.vhd.zip" -j rr/rr.vmc rr/rr.vhd ${USER_CONFIG_FILE} sha256sum README.txt
elif [ "${{ env.format }}" = "vhdx" ]; then
qemu-img convert rr/rr.img -O vhdx -o subformat=dynamic rr/rr.vhdx
(cd rr; sha256sum rr.vhdx >../sha256sum)
(cd rr && sha256sum rr.vhdx >../sha256sum)
zip -9 "rr-${MODEL}-${TAG}-${{ github.run_id }}.vhdx.zip" -j rr/rr.vhdx ${USER_CONFIG_FILE} sha256sum README.txt
else
(cd rr; sha256sum rr.img >../sha256sum)
(cd rr && sha256sum rr.img >../sha256sum)
zip -9 "rr-${MODEL}-${TAG}-${{ github.run_id }}.img.zip" -j rr/rr.img ${USER_CONFIG_FILE} sha256sum README.txt
fi
@@ -361,4 +363,4 @@ jobs:
RR-${{ env.model }} build failed, please try again.
> ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
----
emoji: confused
emoji: confused
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -10,6 +10,7 @@ rr*.vmdk
**.po~
**.mo

downloads.md
tests
Changelog*
sha256sum
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
25.1.4
25.3.1
Loading