157 Commits

Author SHA1 Message Date
gfdgd-xi 4b7552e7ce 关闭临时编译 2024-07-19 21:47:25 +08:00
gfdgd-xi 5200b65d6a 调整 2024-07-19 13:41:32 +08:00
gfdgd-xi 53ddca9aca 二调 2024-07-19 13:37:08 +08:00
gfdgd-xi c45baaa6aa a 2024-07-19 13:34:02 +08:00
gfdgd-xi 4972b460ff 临时关闭重复检测 2024-07-19 13:30:17 +08:00
gfdgd-xi 0a7964fde0 少加环境变量? 2024-07-19 13:19:26 +08:00
gfdgd-xi f096163f9a 环境变量设置有误 2024-07-19 11:28:31 +08:00
gfdgd-xi f9ff780157 使用体积小一些的交叉编译链 2024-07-19 11:18:37 +08:00
gfdgd-xi f8b9cf784b 调整解压目录 2024-07-19 11:12:47 +08:00
gfdgd-xi c6db4635bb 小调 2024-07-19 11:08:14 +08:00
gfdgd-xi 7078b94461 漏加sudo 2024-07-19 10:59:09 +08:00
gfdgd-xi a1b04cc7ee Merge branch 'builder' of https://github.com/gfdgd-xi/Linux-kernel_deb_builder into builder 2024-07-19 10:54:20 +08:00
gfdgd-xi e24ef8287e 并入loong64编译环境 2024-07-19 10:54:01 +08:00
gfdgd-xi b221c9adc5 提交6.10-rc5 2024-06-27 02:16:32 +00:00
gfdgd-xi f8d7835922 调整脚本 2024-05-18 13:03:13 +08:00
gfdgd-xi a8c6053320 调整脚本 2024-05-18 13:00:00 +08:00
gfdgd-xi 67bc9b44f1 调整脚本 2024-05-18 12:59:07 +08:00
gfdgd-xi 91e9d58a4b 调整脚本 2024-05-18 12:55:03 +08:00
gfdgd-xi fc1348d8f1 增加readme 2024-05-18 08:41:05 +08:00
gfdgd-xi 4039219c8e 接入riscv64自动编译 2024-05-18 08:36:51 +08:00
gfdgd-xi eb2a1ccfff 接入mips64自动构建 2024-05-18 08:27:59 +08:00
gfdgd-xi eff9e4f658 新增riscv64测试 2024-05-18 08:14:40 +08:00
gfdgd-xi 314bd4b6ff mips初步 2024-05-18 07:57:41 +08:00
gfdgd-xi 25333c085a 配置错误 2024-05-18 07:37:01 +08:00
gfdgd-xi 50402e9824 接入arm自动构建 2024-05-18 07:35:10 +08:00
gfdgd-xi 3930922b33 减少调试信息 2024-05-17 23:01:02 +08:00
gfdgd-xi 69d7617e83 尝试arm交叉编译 2024-05-17 22:57:31 +08:00
gfdgd-xi 90dab83865 git clone url错误 2024-05-14 12:45:21 +08:00
gfdgd-xi f479510217 优化 2024-05-13 22:02:50 +08:00
gfdgd-xi 300e24ac68 调整虚包包名 2024-05-11 21:06:29 +08:00
gfdgd-xi 1e1370f9fc 调整内核包信息 2024-05-11 21:05:05 +08:00
gfdgd-xi 80ca0e0dbe 修复重复编译的问题 2024-05-08 22:26:04 +08:00
gfdgd-xi 9d9a2644c2 调整安装包包名 2024-05-05 22:50:44 +08:00
gfdgd-xi 2623a8af06 修改包名 2024-05-05 22:24:43 +08:00
gfdgd-xi 5a2568d27b 修复hwe内核无法推送的问题 2024-05-05 13:58:50 +08:00
gfdgd-xi 89b9dab290 调整虚包包名 2024-05-05 10:10:56 +08:00
gfdgd-xi d57001a6cf 修复hwe不会编译的问题 2024-05-05 09:53:34 +08:00
gfdgd-xi 3c1fc47655 修复xanmod内核url获取问题 2024-05-05 09:50:36 +08:00
gfdgd-xi c89a594520 开启xanmod 2024-05-05 09:44:55 +08:00
gfdgd-xi 49b21989a8 调整问题 2024-05-04 19:48:11 +08:00
gfdgd-xi 442cc071da 添加head包 2024-05-04 18:13:01 +08:00
gfdgd-xi 92dd117ef1 调整脚本 2024-05-04 18:09:38 +08:00
gfdgd-xi 5d31b4bd4f 修复错误 2024-05-04 07:45:56 +08:00
gfdgd-xi 79aa2e85a0 Merge branch '6.3.5' of https://github.com/gfdgd-xi/Linux-kernel_deb_builder into 6.3.5 2024-05-03 23:01:54 +08:00
gfdgd-xi 1d209b976b 更新配置文件 2024-05-03 23:01:35 +08:00
gfdgd xi efa361f9ce Create 1 2024-05-03 08:51:02 +08:00
gfdgd-xi 708b984bec 修改README 2023-09-03 14:02:38 +08:00
gfdgd-xi 7acaec942d 砍掉hwe和xanmod编译 2023-08-19 21:43:54 +08:00
gfdgd-xi 8c63de53cd 优化git clone 2023-07-22 19:31:14 +08:00
gfdgd-xi 93483229ca change 2023-07-18 09:39:41 +08:00
gfdgd-xi 9ef940f908 处理没空间问题 2023-07-17 14:28:14 +08:00
gfdgd-xi d8b781bbae 处理没空间问题 2023-07-17 14:26:54 +08:00
gfdgd-xi 065276e104 版本读取问题 2023-07-17 14:20:04 +08:00
gfdgd-xi e63980a58f error 2023-07-14 18:24:32 +08:00
gfdgd-xi d5adcb1b23 修改PATH 2023-07-14 10:10:41 +08:00
gfdgd-xi 254288f7c6 修改file 2023-07-14 09:59:09 +08:00
gfdgd-xi fc9988287a error 2023-07-14 09:53:18 +08:00
gfdgd-xi f05295f306 忽略失败 2023-07-14 09:46:49 +08:00
gfdgd-xi 8b22126f53 忽略检测条件 2023-07-14 09:45:13 +08:00
gfdgd-xi 4d4eb691d3 arm-test 2023-07-14 09:44:17 +08:00
gfdgd-xi 03d9691030 修改判断问题 2023-07-14 09:04:51 +08:00
gfdgd-xi 163913da51 404 2023-07-14 09:03:06 +08:00
gfdgd-xi 301fcde34e gplv3 2023-07-10 21:23:51 +08:00
gfdgd-xi 0be08a3ad9 调整脚本以支持更多格式 2023-07-10 10:04:31 +08:00
gfdgd-xi b9823b7b18 自动签名 2023-07-09 09:51:37 +08:00
gfdgd-xi 7c1c45e81d 修改git commit文本 2023-07-06 15:41:32 +08:00
gfdgd-xi 57041e45dc 修改deb打包格式 2023-07-06 12:40:57 +08:00
gfdgd-xi ae67161de6 xanmod yml 2023-07-04 16:26:36 +08:00
gfdgd-xi ce457f2266 优化编译脚本 2023-07-04 10:36:16 +08:00
gfdgd-xi 99ba4ea209 修改文件名 2023-07-04 09:11:08 +08:00
gfdgd-xi 191bffb75f Change Config 2023-07-04 09:10:19 +08:00
gfdgd-xi 0c284b3ce5 7 2023-07-04 09:08:13 +08:00
gfdgd-xi 5d113cebad hwe 2023-07-04 09:06:31 +08:00
gfdgd-xi dc40b7d41d Change Time 2023-07-04 08:59:27 +08:00
gfdgd-xi fa0d125ce6 remove 8 2023-07-03 22:53:17 +08:00
gfdgd-xi 995c66385a 8 2023-07-03 22:41:24 +08:00
gfdgd-xi 3b31355206 hwe 2023-07-03 22:18:30 +08:00
gfdgd-xi bd229ee0ca 修复版本号识别错误问题 2023-07-01 17:21:54 +08:00
gfdgd-xi 95134c9ece cd problem 2023-07-01 13:14:14 +08:00
gfdgd-xi 34424a10a4 修复bug 2023-07-01 13:09:03 +08:00
gfdgd-xi de15d9a1c6 反爬 2023-07-01 13:04:54 +08:00
gfdgd-xi fd0a516bf0 补充依赖 2023-07-01 13:02:50 +08:00
gfdgd-xi 6fcc4de69e 反爬? 2023-07-01 13:02:00 +08:00
gfdgd-xi de9ab89193 change 2023-07-01 12:58:31 +08:00
gfdgd-xi 8e23afad3e debug 2023-07-01 12:57:08 +08:00
gfdgd-xi 64ca07b8a8 忘改编号了 2023-07-01 12:49:33 +08:00
gfdgd-xi d73dc31167 Merge branch '6.3.5' of https://github.com/gfdgd-xi/Linux-kernel_deb_builder into 6.3.5 2023-07-01 12:48:37 +08:00
gfdgd-xi 1703f55532 xanmod 2023-07-01 12:48:23 +08:00
gfdgd-xi 4edaf9a088 aarch64 2023-06-30 16:31:20 +08:00
gfdgd-xi 544707a406 b 2023-06-28 09:46:30 +08:00
gfdgd-xi 5d9bed10f1 youhua 2023-06-28 09:38:35 +08:00
gfdgd-xi 55798deb2e Merge branch '6.3.5' of https://github.com/gfdgd-xi/Linux-kernel_deb_builder into 6.3.5 2023-06-28 09:35:12 +08:00
gfdgd-xi 857eec3272 test 2023-06-28 09:35:04 +08:00
gfdgd-xi 79f5d61021 b 2023-06-27 12:24:31 +08:00
gfdgd-xi 3855e4ef67 new yml 2023-06-26 20:49:56 +08:00
gfdgd-xi 467ff434cb 4/5 2023-06-26 18:06:05 +08:00
gfdgd-xi 09a02f72b9 change 2023-06-26 17:57:50 +08:00
gfdgd-xi ca5496e66f 优化 2023-06-26 17:53:58 +08:00
gfdgd-xi 4c2a2343f6 auto-building 2023-06-26 17:44:47 +08:00
gfdgd-xi daf075723f 6.4 2023-06-26 16:31:03 +08:00
gfdgd-xi 227f11ccbf 6.2.16 2023-06-24 17:32:32 +08:00
gfdgd-xi c96c145f99 5.15.118 2023-06-24 15:54:04 +08:00
gfdgd-xi 782fa7b38b 5.10.185 2023-06-24 15:14:57 +08:00
gfdgd-xi 8ba3c87338 5.4.248 2023-06-24 14:48:08 +08:00
gfdgd-xi 72bd0327fa 4.19.287 2023-06-24 13:11:12 +08:00
gfdgd-xi 0e86aadc8e 4.14.319 2023-06-24 12:25:31 +08:00
gfdgd-xi afc7505fd7 6.1.35 2023-06-24 12:13:39 +08:00
gfdgd-xi 24afa149e6 6.4-rc7 2023-06-24 12:11:30 +08:00
gfdgd-xi 829bd7c1fb 优化脚本 2023-06-24 12:09:52 +08:00
gfdgd-xi 7565041e21 ssh 2023-06-23 20:45:03 +08:00
gfdgd-xi 3f75ef09e8 修改一些错误 2023-06-23 14:18:52 +08:00
gfdgd-xi 5552538938 新增密码 2023-06-23 10:51:29 +08:00
gfdgd-xi 46bb3d3060 更新 2023-06-23 10:48:49 +08:00
gfdgd-xi 8e32f13d7a 开源许可证 2023-06-23 10:40:07 +08:00
XXTXTOP 03813b8dae 6.3.8 2023-06-18 13:47:27 +08:00
XXTXTOP 1eae1a4e89 6.3.8 2023-06-16 22:32:32 +08:00
XXTXTOP 783d60c3ee 扩容 2023-06-16 22:30:36 +08:00
XXTXTOP dc9de5e16e Update README.md 2023-06-04 04:08:29 +00:00
XXTXTOP d4327fd01c Update build_action.sh 2023-06-03 15:12:13 +08:00
XXTXTOP 497da07d33 Update build.yml 2023-06-03 15:10:26 +08:00
XXTXTOP c1ac0f9856 Update build_action.sh 2023-06-03 15:08:41 +08:00
XXTXTOP aed4249ebd Update build_action.sh 2023-06-03 15:06:16 +08:00
XXTXTOP 8b0bc1dc94 Update build_action.sh 2023-06-03 15:02:49 +08:00
XXTXTOP cbb2253007 Update config 2023-06-03 14:59:15 +08:00
XXTXTOP c452f2e215 Update config 2023-06-03 14:58:50 +08:00
debuggerx01 9a6e457c97 Update redmi_book_air_13_acpi.sh 2023-01-07 02:20:18 +08:00
debuggerx01 c7e926e983 Update build_action.sh 2023-01-07 01:48:11 +08:00
debuggerx01 eebf621313 Update build_action.sh 2023-01-07 01:44:26 +08:00
debuggerx01 bc185fbe02 Update build_action.sh 2023-01-07 01:38:43 +08:00
debuggerx01 e75ab5d332 Update build_action.sh 2023-01-07 01:35:57 +08:00
debuggerx01 c1f5fd66ae Update build_action.sh 2023-01-07 01:34:37 +08:00
debuggerx01 3a62e69513 Update build_action.sh 2023-01-07 01:33:26 +08:00
debuggerx01 6da69b89d1 Update build_action.sh 2023-01-07 01:31:44 +08:00
debuggerx01 d5f6e939a3 Update build.yml 2023-01-07 01:30:00 +08:00
debuggerx01 beda0312bd Update build_action.sh 2023-01-07 01:26:54 +08:00
debuggerx01 a1726f422d Update build_action.sh 2023-01-07 01:25:32 +08:00
debuggerx01 f58a51f928 Update build_action.sh 2023-01-07 01:22:46 +08:00
debuggerx01 e31aa16d27 Update build.yml 2023-01-07 01:19:54 +08:00
debuggerx01 e16456d555 Update build_action.sh 2023-01-06 23:23:08 +08:00
debuggerx01 1cab7bacc5 deepin_container 2023-01-06 23:21:40 +08:00
debuggerx01 cd50c25ef7 5.10.117 2023-01-06 00:10:25 +08:00
debuggerx01 de87de1bed Update redmi_book_air_13_acpi.sh 2022-07-25 09:57:27 +08:00
debuggerx01 b08b0de12f Update redmi_book_air_13_acpi.sh 2022-07-25 09:48:40 +08:00
debuggerx01 aa389a7570 Update config 2022-07-24 22:52:07 +08:00
debuggerx01 9f1f73bad4 Update config 2022-06-11 02:25:34 +08:00
debuggerx01 c52c398452 Update config 2022-06-11 00:43:18 +08:00
debuggerx01 6f2b1ddba0 Update README.md 2021-08-26 15:04:37 +08:00
debuggerx 17e27cb1ac disable DEBUG_INFO to speedup build and reduce space cost. 2021-08-16 18:32:57 +08:00
debuggerx 945692eeb7 fix: wrong copy path. 2021-08-04 14:45:23 +08:00
debuggerx 16bffb1397 fix: wrong copy path. 2021-08-04 12:16:33 +08:00
debuggerx 440af1b462 fix: give root more space. 2021-08-04 09:34:50 +08:00
debuggerx 2cbb5e3908 test disk space monitor. 2021-08-03 23:07:37 +08:00
debuggerx 5e89314c31 feat: use more compile thread to speed up build. 2021-08-03 17:09:54 +08:00
debuggerx 000a7852ed fix no space left error. 2021-08-03 17:04:33 +08:00
debuggerx 705596a29c fix wrong patch dir path. 2021-08-03 14:13:22 +08:00
debuggerx f6691914c7 test ci 2021-08-03 14:07:27 +08:00
debuggerx01 d6ff6cfb5b Initial commit 2021-08-03 12:59:19 +08:00
98 changed files with 106915 additions and 1771 deletions
+33
View File
@@ -0,0 +1,33 @@
name: test
on:
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
#- name: Maximize build space
# uses: easimon/maximize-build-space@master
# with:
# # 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
# root-reserve-mb: 4096
# swap-size-mb: 512
# remove-dotnet: 'true'
# remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
run: |
sudo apt update
sudo apt install neofetch -y
neofetch
df -H /
bash build_action-aarch64.sh 1
+29
View File
@@ -0,0 +1,29 @@
name: Build kernel deb packages(test)
on:
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action-mips64el.sh 0
+36
View File
@@ -0,0 +1,36 @@
name: Build kernel deb packages(0)
on:
schedule:
- cron: '0 0 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action-loong64-4k-pagesize.sh 0
bash build_action.sh 0
bash build_action-aarch64.sh 0
bash build_action-mips64el.sh 0
bash build_action-riscv64.sh 0
+30
View File
@@ -0,0 +1,30 @@
name: Build kernel deb packages(1, test)
on:
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action-riscv64.sh 1
+36
View File
@@ -0,0 +1,36 @@
name: Build kernel deb packages(1)
on:
schedule:
- cron: '0 3 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action-loong64-4k-pagesize.sh 1
bash build_action.sh 1
bash build_action-aarch64.sh 1
bash build_action-mips64el.sh 1
bash build_action-riscv64.sh 1
+36
View File
@@ -0,0 +1,36 @@
name: Build kernel deb packages(2)
on:
schedule:
- cron: '0 6 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action-loong64-4k-pagesize.sh 2
bash build_action.sh 2
bash build_action-aarch64.sh 2
bash build_action-mips64el.sh 2
bash build_action-riscv64.sh 2
+35
View File
@@ -0,0 +1,35 @@
name: Build kernel deb packages(3)
on:
schedule:
- cron: '0 9 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action.sh 3
bash build_action-aarch64.sh 3
bash build_action-mips64el.sh 3
bash build_action-riscv64.sh 3
+35
View File
@@ -0,0 +1,35 @@
name: Build kernel deb packages(4)
on:
schedule:
- cron: '0 12 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action.sh 4
bash build_action-aarch64.sh 4
bash build_action-mips64el.sh 4
bash build_action-riscv64.sh 4
+35
View File
@@ -0,0 +1,35 @@
name: Build kernel deb packages(5)
on:
schedule:
- cron: '0 15 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action.sh 5
bash build_action-aarch64.sh 5
bash build_action-mips64el.sh 5
bash build_action-riscv64.sh 5
+35
View File
@@ -0,0 +1,35 @@
name: Build kernel deb packages(6)
on:
schedule:
- cron: '0 18 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action.sh 6
bash build_action-aarch64.sh 6
bash build_action-mips64el.sh 6
bash build_action-riscv64.sh 6
+35
View File
@@ -0,0 +1,35 @@
name: Build kernel deb packages(7)
on:
schedule:
- cron: '0 21 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: |
bash build_action.sh 7
bash build_action-aarch64.sh 7
bash build_action-mips64el.sh 7
bash build_action-riscv64.sh 7
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE kernel deb packages(0)
on:
schedule:
- cron: '0 2 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action.sh 0 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE kernel deb packages(1)
on:
schedule:
- cron: '0 5 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action.sh 1 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE kernel deb packages(2)
on:
schedule:
- cron: '0 8 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action.sh 2 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE kernel deb packages(3)
on:
schedule:
- cron: '0 11 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action.sh 3 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE kernel deb packages(4)
on:
schedule:
- cron: '0 14 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action.sh 4 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE kernel deb packages(5)
on:
schedule:
- cron: '0 17 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action.sh 5 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE kernel deb packages(6)
on:
schedule:
- cron: '0 20 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action.sh 6 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE kernel deb packages(7)
on:
schedule:
- cron: '0 23 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action.sh 7 1
+31
View File
@@ -0,0 +1,31 @@
name: Build Xanmod kernel deb packages(0)
on:
schedule:
- cron: '0 22 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action_xanmod.sh 0
+31
View File
@@ -0,0 +1,31 @@
name: Build Xanmod kernel deb packages(1)
on:
schedule:
- cron: '0 19 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action_xanmod.sh 1
+31
View File
@@ -0,0 +1,31 @@
name: Build Xanmod kernel deb packages(2)
on:
schedule:
- cron: '0 16 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action_xanmod.sh 2
+31
View File
@@ -0,0 +1,31 @@
name: Build Xanmod kernel deb packages(3)
on:
schedule:
- cron: '0 13 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action_xanmod.sh 3
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE Xanmod kernel deb packages(0)
on:
schedule:
- cron: '0 1 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action_xanmod.sh 0 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE Xanmod kernel deb packages(1)
on:
schedule:
- cron: '0 4 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action_xanmod.sh 1 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE Xanmod kernel deb packages(2)
on:
schedule:
- cron: '0 7 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action_xanmod.sh 2 1
+31
View File
@@ -0,0 +1,31 @@
name: Build HWE Xanmod kernel deb packages(3)
on:
schedule:
- cron: '0 10 * * *'
workflow_dispatch:
jobs:
build:
name: Build kernel
runs-on: ubuntu-latest
steps:
# 由于默认的 Ubuntu 环境只有 17G 左右的剩余空间,所以我们需要先利用如下 action 对编译环境进行扩容
- name: Maximize build space
uses: easimon/maximize-build-space@master
with:
# 这个值是保留给系统的空间大小,之前设置太小,总会在安装依赖或者编译过程中报设备空间不足的错误而导致编译失败
root-reserve-mb: 4096
swap-size-mb: 512
remove-dotnet: 'true'
remove-android: 'true'
- name: Checkout
uses: actions/checkout@v3
- name: Build
env:
PASSWORD: ${{ secrets.PASSWORD }}
KEYPASSWORD: ${{ secrets.KEYPASSWORD }}
KEY: ${{ secrets.KEY }}
run: bash build_action_xanmod.sh 3 1
-72
View File
@@ -1,72 +0,0 @@
# This file is used to ignore files which are generated
# ----------------------------------------------------------------------------
*~
*.autosave
*.a
*.core
*.moc
*.o
*.obj
*.orig
*.rej
*_pch.h.cpp
*_resource.rc
*.qm
.#*
*.*#
core
!core/
tags
.DS_Store
.directory
*.debug
Makefile*
*.prl
*.app
moc_*.cpp
ui_*.h
qrc_*.cpp
Thumbs.db
*.res
*.rc
/.qmake.cache
/.qmake.stash
# qtcreator generated files
*.pro.user*
CMakeLists.txt.user*
# xemacs temporary files
*.flc
# Vim temporary files
.*.swp
# Visual Studio generated files
*.ib_pdb_index
*.idb
*.ilk
*.pdb
*.sln
*.suo
*.vcproj
*vcproj.*.*.user
*.ncb
*.sdf
*.opensdf
*.vcxproj
*vcxproj.*
# MinGW generated files
*.Debug
*.Release
# Python byte code
*.pyc
# Binaries
# --------
*.dll
*.exe
+1
View File
@@ -0,0 +1 @@
Binary file not shown.
-2
View File
@@ -1,2 +0,0 @@
deb [trusted=true] https://master.dl.sourceforge.net/project/gxde-kernel-manager/kernel/ ./
deb [trusted=true] https://kernel.gxde.gfdgdxi.top/ ./
Executable → Regular
View File
+9 -49
View File
@@ -1,51 +1,11 @@
<p width=100px align="center"><img width=40% src="icon/icon.svg"></p> # GXDE 内核管理器内核自动编译工程
<h1 align="center">GXDE 内核管理器 1.0.1</h1> 利用 GitHub Actions 自动编译 Linux 内核为 deb 包。
<hr> 目前支持自动拉取最新版本内核源码、编译、推 apt 源
<a href='https://gitee.com/GXDE-OS/gxde-kernel-manager/stargazers'><img src='https://gitee.com/GXDE-OS/gxde-kernel-manager/badge/star.svg?theme=dark' alt='star'></img></a> GXDE 内核管理器客户端:
<a href='https://gitee.com/GXDE-OS/gxde-kernel-manager/members'><img src='https://gitee.com/GXDE-OS/gxde-kernel-manager/badge/fork.svg?theme=dark' alt='fork'></img></a> - https://gitee.com/GXDE-OS/gxde-kernel-manager
- https://github.com/GXDE-OS/gxde-kernel-manager
- https://sourceforge.net/projects/gxde-kernel-manager/
## 介绍 ![image.png](https://storage.deepin.org/thread/202405120819335429_image.png)
GXDE 内核管理器是一个帮助用户更方便获取、安装、移除内核的工具。
目前支持 amd64、arm64、mips64 和 loong64 四个架构
***警告:请不要随意操作内核除非你知道你在做什么!***
![截图_deepin-terminal_20240502212456.png](https://storage.deepin.org/thread/20240502134212362_截图_deepin-terminal_20240502212456.png) ![image.png](https://storage.deepin.org/thread/202405120820175356_image.png)
![截图_gxde-kernel-manager_20240502212431.png](https://storage.deepin.org/thread/202405021342123825_截图_gxde-kernel-manager_20240502212431.png)
![截图_gxde-kernel-manager_20240502212321.png](https://storage.deepin.org/thread/202405021342122641_截图_gxde-kernel-manager_20240502212321.png)
![截图_gxde-kernel-manager_20240502211723.png](https://storage.deepin.org/thread/202405021342116834_截图_gxde-kernel-manager_20240502211723.png)
## 更新内容
### 1.0.12024年05月03日)
**1、修复部分系统无法打开管理器的问题**
**2、新增 Sourceforge 源以准备支持大内核文件**
### 1.0.02024年05月02日)
![截图_deepin-terminal_20240502212456.png](https://storage.deepin.org/thread/20240502134212362_截图_deepin-terminal_20240502212456.png)
![截图_gxde-kernel-manager_20240502212431.png](https://storage.deepin.org/thread/202405021342123825_截图_gxde-kernel-manager_20240502212431.png)
![截图_gxde-kernel-manager_20240502212321.png](https://storage.deepin.org/thread/202405021342122641_截图_gxde-kernel-manager_20240502212321.png)
![截图_gxde-kernel-manager_20240502211723.png](https://storage.deepin.org/thread/202405021342116834_截图_gxde-kernel-manager_20240502211723.png)
## 内核仓库 apt 源
安装 GXDE 内核管理器后会自动添加
源地址:https://kernel.gxde.gfdgdxi.top/
## 编译安装
```bash
git clone https://gitee.com/GXDE-OS/gxde-kernel-manager
cd gxde-kernel-manager
sudo apt build-dep .
qmake .
make -j4
sudo make install -j4
```
## 构建 deb 包
```bash
git clone https://gitee.com/GXDE-OS/gxde-kernel-manager
cd gxde-kernel-manager
sudo apt build-dep .
sudo apt install fakeroot
dpkg-buildpackage -b -us
```
# ©2023Now gfdgd xi
-16
View File
@@ -1,16 +0,0 @@
<RCC>
<qresource prefix="/">
<file>shell/kernel-installer-root-loader-template.sh</file>
<file>shell/kernel-installer-template.sh</file>
<file>icon/dialog-apply.svg</file>
<file>icon/dialog-cancel.svg</file>
<file>icon/dialog-error.svg</file>
<file>icon/dialog-information.svg</file>
<file>icon/dialog-ok.svg</file>
<file>icon/dialog-question.svg</file>
<file>icon/dialog-warning.svg</file>
<file>icon/icon.svg</file>
<file>shell/kernel-installer-remove-template.sh</file>
<file>translation/gxde-kernel-manager_zh_CN.qm</file>
</qresource>
</RCC>
View File
-34
View File
@@ -1,34 +0,0 @@
#include "aboutwindow.h"
#include "ui_aboutwindow.h"
#include <QDateTime>
AboutWindow::AboutWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::AboutWindow)
{
ui->setupUi(this);
QString info = "";
info += "<pre>";
info += tr("A kernel manager allows users to install or remove kernels easily.") + "\n\n";
info += "<b>" + tr("Warning: You may damage your system unless you know what you will do!") + "</b>\n";
info += "</pre>";
info += "<hr/>";
info += "<h3>" + tr("Website") + "</h3>";
info += "<p>Gitee: <a href='https://gitee.com/GXDE-OS/gxde-kernel-manager'>https://gitee.com/GXDE-OS/gxde-kernel-manager</a></p>";
info += "<p>Github: <a href='https://github.com/GXDE-OS/gxde-kernel-manager'>https://github.com/GXDE-OS/gxde-kernel-manager</a></p>";
info += "<hr/>\n";
info += "<h1>©2023" + QDateTime::currentDateTime().toString("yyyy") + " gfdgd xi</h1>\n";
ui->textBrowser->setHtml(info);
}
AboutWindow::~AboutWindow()
{
delete ui;
}
void AboutWindow::on_m_closeButton_clicked()
{
this->close();
}
-25
View File
@@ -1,25 +0,0 @@
#ifndef ABOUTWINDOW_H
#define ABOUTWINDOW_H
#include <QMainWindow>
namespace Ui {
class AboutWindow;
}
class AboutWindow : public QMainWindow
{
Q_OBJECT
public:
explicit AboutWindow(QWidget *parent = nullptr);
~AboutWindow();
private slots:
void on_m_closeButton_clicked();
private:
Ui::AboutWindow *ui;
};
#endif // ABOUTWINDOW_H
-77
View File
@@ -1,77 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>AboutWindow</class>
<widget class="QMainWindow" name="AboutWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>600</height>
</rect>
</property>
<property name="windowTitle">
<string>About</string>
</property>
<property name="windowIcon">
<iconset resource="Resource.qrc">
<normaloff>:/icon/icon.svg</normaloff>:/icon/icon.svg</iconset>
</property>
<widget class="QWidget" name="centralwidget">
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QLabel" name="m_logoShower">
<property name="text">
<string>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;img width=128 src=&quot;:/icon/icon.svg&quot;/&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</string>
</property>
<property name="alignment">
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignTop</set>
</property>
</widget>
</item>
<item>
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QTextBrowser" name="textBrowser">
<property name="openExternalLinks">
<bool>true</bool>
</property>
<property name="openLinks">
<bool>true</bool>
</property>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout_2">
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="m_closeButton">
<property name="text">
<string>OK</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
<resources>
<include location="Resource.qrc"/>
</resources>
<connections/>
</ui>
-17
View File
@@ -1,17 +0,0 @@
#!/bin/bash
set -e
if [[ ! -n $1 ]]; then
echo "Error, option isn't full"
exit 1
fi
programPath=$(cd $(dirname $0); pwd)
dpkg -x "$1" /tmp/gxde-kernel-manager
dpkg -e "$1" /tmp/gxde-kernel-manager/DEBIAN
sed -i "s/libqtermwidget5-0 (>= 0.8.0), /libqtermwidget5-0 | libqtermwidget5-1, /g" /tmp/gxde-kernel-manager/DEBIAN/control
cp $programPath/lib /tmp/gxde-kernel-manager/opt/apps/gxde-kernel-manager/ -rv
if [[ ! -n $2 ]]; then
dpkg-deb -Z xz -z 9 -b /tmp/gxde-kernel-manager "$1"
else
dpkg-deb -Z xz -z 9 -b /tmp/gxde-kernel-manager "$2"
fi
+223
View File
@@ -0,0 +1,223 @@
#!/usr/bin/env bash
sudo rm -rfv "${GITHUB_WORKSPACE}"/linux*/
sudo rm -rfv /tmp/*
sed -i "/deb-src/s/# //g" /etc/apt/sources.list
sudo apt update
sudo apt install gpg python3-pyquery -y
aria2c $KEY
gpg --import --pinentry-mode loopback --batch --passphrase "$KEYPASSWORD" private-file.key
python3 get-newest-version.py $1
#VERSION=$(grep 'Kernel Configuration' < config | awk '{print $3}')
# add deb-src to sources.list
VERSION=`cat /tmp/kernelversion.txt`
URL=`cat /tmp/kernelurl.txt`
MAINVERSION=`expr substr $VERSION 1 1`
SHOWVERSION=$VERSION
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
SHOWVERSION=$VERSION-hwe
fi
if [[ $2 == 1 ]]; then
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1-hwe/linux-kernel-gxde-gfdgdxi-$1-hwe_${VERSION}_arm64.deb | grep 404
result=$?
else
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1/linux-kernel-gxde-gfdgdxi-${1}_${VERSION}_arm64.deb | grep 404
result=$?
fi
if [[ $result != 0 ]]; then
exit
fi
# install dep
sudo apt install -y wget xz-utils make gcc flex bison dpkg-dev bc rsync kmod cpio libssl-dev git lsb vim libelf-dev
sudo apt install -y gcc-aarch64-linux-gnu
sudo apt build-dep -y linux
# change dir to workplace
cd "${GITHUB_WORKSPACE}" || exit
# download kernel source
wget $URL
if [[ -f linux-"$VERSION".tar.xz ]]; then
tar -xf linux-"$VERSION".tar.xz
fi
if [[ -f linux-"$VERSION".tar.gz ]]; then
tar -xf linux-"$VERSION".tar.gz
fi
if [[ -f linux-"$VERSION".tar ]]; then
tar -xf linux-"$VERSION".tar
fi
if [[ -f linux-"$VERSION".bz2 ]]; then
tar -xf linux-"$VERSION".tar.bz2
fi
cd linux-"$VERSION" || exit
# copy config file
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
cp ../config-6.1.11-arm64-desktop-hwe .config
else
cp ../config-arm64 .config
fi
echo $VERSION | grep 4.14
if [[ $? == 0 ]]; then
cp ../config-4.19.0-10-arm64 .config
fi
#
# disable DEBUG_INFO to speedup build
# scripts/config --disable DEBUG_INFO
scripts/config --set-str SYSTEM_TRUSTED_KEYS ""
scripts/config --set-str SYSTEM_REVOCATION_KEYS ""
scripts/config --undefine DEBUG_INFO
scripts/config --undefine DEBUG_INFO_COMPRESSED
scripts/config --undefine DEBUG_INFO_REDUCED
scripts/config --undefine DEBUG_INFO_SPLIT
scripts/config --undefine GDB_SCRIPTS
scripts/config --disable DEBUG_INFO
scripts/config --set-val DEBUG_INFO_DWARF5 n
scripts/config --set-val DEBUG_INFO_NONE y
# build deb packages
CPU_CORES=$(($(grep -c processor < /proc/cpuinfo)*2))
sudo env DEBEMAIL="gfdgd xi <3025613752@qq.com>" make ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- bindeb-pkg -j"$CPU_CORES"
# 移动 deb
mkdir /tmp/deb-result
cp ../*.deb /tmp/deb-result
rm /tmp/deb-result/linux-libc-dev*.deb
rm /tmp/deb-result/*dbg*.deb
if [[ $2 == 1 ]]; then
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
mkdir dclc-kernel
mkdir dclc-kernel/$SHOWVERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$SHOWVERSION
cd dclc-kernel/$SHOWVERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: arm64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-arm64-gfdgdxi-desktop-hwe, linux-image-$VERSION-arm64-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: 内核 $VERSION
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: arm64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-arm64-gfdgdxi-desktop-hwe, linux-image-$VERSION-arm64-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: 内核 HWE $VERSION
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi-hwe_${VERSION}_arm64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-$1-hwe_${VERSION}_arm64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$SHOWVERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
touch l/linux-headers-$VERSION-arm64-gfdgdxi-desktop-hwe/lock
rm -rfv l/linux-libc-dev/
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
else
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
#cd dclc-kernel
mkdir dclc-kernel
mkdir dclc-kernel/$VERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$VERSION
cd dclc-kernel/$VERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: arm64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-arm64-gfdgdxi-desktop, linux-image-$VERSION-arm64-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: arm64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-arm64-gfdgdxi-desktop, linux-image-$VERSION-arm64-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi_${VERSION}_arm64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-${1}_${VERSION}_arm64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$VERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
rm -rfv l/linux-libc-dev/
touch l/linux-headers-$VERSION-arm64-gfdgdxi-desktop/lock
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
fi
+222
View File
@@ -0,0 +1,222 @@
#!/usr/bin/env bash
sudo rm -rfv "${GITHUB_WORKSPACE}"/linux*/
sudo rm -rfv /tmp/*
sed -i "/deb-src/s/# //g" /etc/apt/sources.list
sudo apt update
sudo apt install gpg python3-pyquery -y
aria2c $KEY
gpg --import --pinentry-mode loopback --batch --passphrase "$KEYPASSWORD" private-file.key
python3 get-newest-version.py $1
#VERSION=$(grep 'Kernel Configuration' < config | awk '{print $3}')
# add deb-src to sources.list
VERSION=`cat /tmp/kernelversion.txt`
URL=`cat /tmp/kernelurl.txt`
MAINVERSION=`expr substr $VERSION 1 1`
SHOWVERSION=$VERSION
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
SHOWVERSION=$VERSION-hwe
fi
if [[ $2 == 1 ]]; then
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1-hwe/linux-kernel-gxde-gfdgdxi-$1-loong64-4k-pagesize-gfdgdxi-desktop_${VERSION}_loong64.deb | grep 404
result=$?
else
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1/linux-kernel-gxde-gfdgdxi-${1}-loong64-4k-pagesize-gfdgdxi-desktop_${VERSION}_loong64.deb | grep 404
result=$?
fi
if [[ $result != 0 ]]; then
exit
fi
# install dep
sudo apt install -y wget xz-utils make gcc flex bison dpkg-dev bc rsync kmod cpio libssl-dev git lsb vim libelf-dev aria2
sudo apt install -y gcc-aarch64-linux-gnu
sudo apt build-dep -y linux
# 配置 loong64 交叉编译环境
cd ~
aria2c -x 16 -s 16 https://github.com/sunhaiyong1978/CLFS-for-LoongArch/releases/download/8.1/CLFS-loongarch64-8.1-x86_64-cross-tools-gcc.tar.xz
tar -xf CLFS-loongarch64-8.1-x86_64-cross-tools-gcc.tar.xz
rm CLFS-loongarch64-8.1-x86_64-cross-tools-gcc.tar.xz -v
export PATH=/home/runner/cross-tools/bin:$PATH
export LD_LIBRARY_PATH=/home/runner/cross-tools/lib:/home/runner/cross-tools/loongarch64-unknown-linux-gnu/lib64:$LD_LIBRARY_PATH
# change dir to workplace
cd "${GITHUB_WORKSPACE}" || exit
# download kernel source
wget $URL
if [[ -f linux-"$VERSION".tar.xz ]]; then
tar -xf linux-"$VERSION".tar.xz
fi
if [[ -f linux-"$VERSION".tar.gz ]]; then
tar -xf linux-"$VERSION".tar.gz
fi
if [[ -f linux-"$VERSION".tar ]]; then
tar -xf linux-"$VERSION".tar
fi
if [[ -f linux-"$VERSION".bz2 ]]; then
tar -xf linux-"$VERSION".tar.bz2
fi
cd linux-"$VERSION" || exit
# copy config file
cp ../config-loong64-4k-pagesize .config
#
# disable DEBUG_INFO to speedup build
# scripts/config --disable DEBUG_INFO
scripts/config --set-str SYSTEM_TRUSTED_KEYS ""
scripts/config --set-str SYSTEM_REVOCATION_KEYS ""
scripts/config --undefine DEBUG_INFO
scripts/config --undefine DEBUG_INFO_COMPRESSED
scripts/config --undefine DEBUG_INFO_REDUCED
scripts/config --undefine DEBUG_INFO_SPLIT
scripts/config --undefine GDB_SCRIPTS
scripts/config --disable DEBUG_INFO
scripts/config --set-val DEBUG_INFO_DWARF5 n
scripts/config --set-val DEBUG_INFO_NONE y
# build deb packages
CPU_CORES=$(($(grep -c processor < /proc/cpuinfo)*2))
sudo env DEBEMAIL="gfdgd xi <3025613752@qq.com>" make PATH=/home/runner/cross-tools/bin:$PATH LD_LIBRARY_PATH=/home/runner/cross-tools/lib:/home/runner/cross-tools/loongarch64-unknown-linux-gnu/lib64:$LD_LIBRARY_PATH ARCH=loongarch CROSS_COMPILE=loongarch64-unknown-linux-gnu- bindeb-pkg -j"$CPU_CORES"
# 移动 deb
mkdir /tmp/deb-result
cp ../*.deb /tmp/deb-result
rm /tmp/deb-result/linux-libc-dev*.deb
rm /tmp/deb-result/*dbg*.deb
if [[ $2 == 1 ]]; then
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
mkdir dclc-kernel
mkdir dclc-kernel/$SHOWVERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$SHOWVERSION
cd dclc-kernel/$SHOWVERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-loong64-4k-pagesize-gfdgdxi-desktop
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: loong64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-loong64-4k-pagesize-gfdgdxi-desktop, linux-image-$VERSION-loong64-4k-pagesize-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核 $VERSION
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1-loong64-4k-pagesize-gfdgdxi-desktop
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: loong64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-loong64-4k-pagesize-gfdgdxi-desktop, linux-image-$VERSION-loong64-4k-pagesize-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核 HWE $VERSION
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi-loong64-4k-pagesize-gfdgdxi-desktop_${VERSION}_loong64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-$1-loong64-4k-pagesize-gfdgdxi-desktop_${VERSION}_loong64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$SHOWVERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
touch l/linux-headers-$VERSION-arm64-gfdgdxi-desktop-hwe/lock
rm -rfv l/linux-libc-dev/
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
else
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
#cd dclc-kernel
mkdir dclc-kernel
mkdir dclc-kernel/$VERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$VERSION
cd dclc-kernel/$VERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-loong64-4k-pagesize-gfdgdxi-desktop
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: loong64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-loong64-4k-pagesize-gfdgdxi-desktop, linux-image-$VERSION-loong64-4k-pagesize-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: loong64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-loong64-4k-pagesize-gfdgdxi-desktop, linux-image-$VERSION-loong64-4k-pagesize-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi-loong64-4k-pagesize-gfdgdxi-desktop_${VERSION}_loong64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-${1}-loong64-4k-pagesize-gfdgdxi-desktop_${VERSION}_loong64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$VERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
rm -rfv l/linux-libc-dev/
touch l/linux-headers-$VERSION-arm64-gfdgdxi-desktop/lock
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
fi
+223
View File
@@ -0,0 +1,223 @@
#!/usr/bin/env bash
sudo rm -rfv "${GITHUB_WORKSPACE}"/linux*/
sudo rm -rfv /tmp/*
sed -i "/deb-src/s/# //g" /etc/apt/sources.list
sudo apt update
sudo apt install gpg python3-pyquery -y
aria2c $KEY
gpg --import --pinentry-mode loopback --batch --passphrase "$KEYPASSWORD" private-file.key
python3 get-newest-version.py $1
#VERSION=$(grep 'Kernel Configuration' < config | awk '{print $3}')
# add deb-src to sources.list
VERSION=`cat /tmp/kernelversion.txt`
URL=`cat /tmp/kernelurl.txt`
MAINVERSION=`expr substr $VERSION 1 1`
SHOWVERSION=$VERSION
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
SHOWVERSION=$VERSION-hwe
fi
if [[ $2 == 1 ]]; then
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1-hwe/linux-kernel-gxde-gfdgdxi-$1-hwe_${VERSION}_mips64el.deb | grep 404
result=$?
else
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1/linux-kernel-gxde-gfdgdxi-${1}_${VERSION}_mips64el.deb | grep 404
result=$?
fi
if [[ $result != 0 ]]; then
exit
fi
# install dep
sudo apt install -y wget xz-utils make gcc flex bison dpkg-dev bc rsync kmod cpio libssl-dev git lsb vim libelf-dev
sudo apt install -y gcc-mips64el-linux-gnuabi64
sudo apt build-dep -y linux
# change dir to workplace
cd "${GITHUB_WORKSPACE}" || exit
# download kernel source
wget $URL
if [[ -f linux-"$VERSION".tar.xz ]]; then
tar -xf linux-"$VERSION".tar.xz
fi
if [[ -f linux-"$VERSION".tar.gz ]]; then
tar -xf linux-"$VERSION".tar.gz
fi
if [[ -f linux-"$VERSION".tar ]]; then
tar -xf linux-"$VERSION".tar
fi
if [[ -f linux-"$VERSION".bz2 ]]; then
tar -xf linux-"$VERSION".tar.bz2
fi
cd linux-"$VERSION" || exit
# copy config file
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
cp ../config-6.1.11-mips64el-desktop-hwe .config
else
cp ../config-mips64el .config
fi
echo $VERSION | grep 4.14
if [[ $? == 0 ]]; then
cp ../config-4.19.0-10-mips64el .config
fi
#
# disable DEBUG_INFO to speedup build
# scripts/config --disable DEBUG_INFO
scripts/config --set-str SYSTEM_TRUSTED_KEYS ""
scripts/config --set-str SYSTEM_REVOCATION_KEYS ""
scripts/config --undefine DEBUG_INFO
scripts/config --undefine DEBUG_INFO_COMPRESSED
scripts/config --undefine DEBUG_INFO_REDUCED
scripts/config --undefine DEBUG_INFO_SPLIT
scripts/config --undefine GDB_SCRIPTS
scripts/config --disable DEBUG_INFO
scripts/config --set-val DEBUG_INFO_DWARF5 n
scripts/config --set-val DEBUG_INFO_NONE y
# build deb packages
CPU_CORES=$(($(grep -c processor < /proc/cpuinfo)*2))
sudo env DEBEMAIL="gfdgd xi <3025613752@qq.com>" make ARCH=mips CROSS_COMPILE=mips64el-linux-gnuabi64- bindeb-pkg -j"$CPU_CORES"
# 移动 deb
mkdir /tmp/deb-result
cp ../*.deb /tmp/deb-result
rm /tmp/deb-result/linux-libc-dev*.deb
rm /tmp/deb-result/*dbg*.deb
if [[ $2 == 1 ]]; then
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
mkdir dclc-kernel
mkdir dclc-kernel/$SHOWVERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$SHOWVERSION
cd dclc-kernel/$SHOWVERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: mips64el
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-mips64el-loongson3-gfdgdxi-desktop-hwe, linux-image-$VERSION-mips64el-loongson3-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: 内核 $VERSION
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: mips64el
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-mips64el-loongson3-gfdgdxi-desktop-hwe, linux-image-$VERSION-mips64el-loongson3-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: 内核 HWE $VERSION
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi-hwe_${VERSION}_mips64el.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-$1-hwe_${VERSION}_mips64el.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$SHOWVERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
touch l/linux-headers-$VERSION-mips64el-gfdgdxi-desktop-hwe/lock
rm -rfv l/linux-libc-dev/
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
else
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
#cd dclc-kernel
mkdir dclc-kernel
mkdir dclc-kernel/$VERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$VERSION
cd dclc-kernel/$VERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: mips64el
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-mips64el-loongson3-gfdgdxi-desktop, linux-image-$VERSION-mips64el-loongson3-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: mips64el
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-mips64el-loongson3-gfdgdxi-desktop, linux-image-$VERSION-mips64el-loongson3-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi_${VERSION}_mips64el.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-${1}_${VERSION}_mips64el.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$VERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
rm -rfv l/linux-libc-dev/
touch l/linux-headers-$VERSION-mips64el-gfdgdxi-desktop/lock
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
fi
+223
View File
@@ -0,0 +1,223 @@
#!/usr/bin/env bash
sudo rm -rfv "${GITHUB_WORKSPACE}"/linux*/
sudo rm -rfv /tmp/*
sed -i "/deb-src/s/# //g" /etc/apt/sources.list
sudo apt update
sudo apt install gpg python3-pyquery -y
aria2c $KEY
gpg --import --pinentry-mode loopback --batch --passphrase "$KEYPASSWORD" private-file.key
python3 get-newest-version.py $1
#VERSION=$(grep 'Kernel Configuration' < config | awk '{print $3}')
# add deb-src to sources.list
VERSION=`cat /tmp/kernelversion.txt`
URL=`cat /tmp/kernelurl.txt`
MAINVERSION=`expr substr $VERSION 1 1`
SHOWVERSION=$VERSION
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
SHOWVERSION=$VERSION-hwe
fi
if [[ $2 == 1 ]]; then
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1-hwe/linux-kernel-gxde-gfdgdxi-$1-hwe_${VERSION}_riscv64.deb | grep 404
result=$?
else
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1/linux-kernel-gxde-gfdgdxi-${1}_${VERSION}_riscv64.deb | grep 404
result=$?
fi
if [[ $result != 0 ]]; then
exit
fi
# install dep
sudo apt install -y wget xz-utils make gcc flex bison dpkg-dev bc rsync kmod cpio libssl-dev git lsb vim libelf-dev
sudo apt install -y gcc-riscv64-linux-gnu
sudo apt build-dep -y linux
# change dir to workplace
cd "${GITHUB_WORKSPACE}" || exit
# download kernel source
wget $URL
if [[ -f linux-"$VERSION".tar.xz ]]; then
tar -xf linux-"$VERSION".tar.xz
fi
if [[ -f linux-"$VERSION".tar.gz ]]; then
tar -xf linux-"$VERSION".tar.gz
fi
if [[ -f linux-"$VERSION".tar ]]; then
tar -xf linux-"$VERSION".tar
fi
if [[ -f linux-"$VERSION".bz2 ]]; then
tar -xf linux-"$VERSION".tar.bz2
fi
cd linux-"$VERSION" || exit
# copy config file
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
cp ../config-6.1.11-riscv64-desktop-hwe .config
else
cp ../config-riscv64 .config
fi
echo $VERSION | grep 4.14
if [[ $? == 0 ]]; then
cp ../config-4.19.0-10-riscv64 .config
fi
#
# disable DEBUG_INFO to speedup build
# scripts/config --disable DEBUG_INFO
scripts/config --set-str SYSTEM_TRUSTED_KEYS ""
scripts/config --set-str SYSTEM_REVOCATION_KEYS ""
scripts/config --undefine DEBUG_INFO
scripts/config --undefine DEBUG_INFO_COMPRESSED
scripts/config --undefine DEBUG_INFO_REDUCED
scripts/config --undefine DEBUG_INFO_SPLIT
scripts/config --undefine GDB_SCRIPTS
scripts/config --disable DEBUG_INFO
scripts/config --set-val DEBUG_INFO_DWARF5 n
scripts/config --set-val DEBUG_INFO_NONE y
# build deb packages
CPU_CORES=$(($(grep -c processor < /proc/cpuinfo)*2))
sudo env DEBEMAIL="gfdgd xi <3025613752@qq.com>" make ARCH=riscv CROSS_COMPILE=riscv64-linux-gnu- bindeb-pkg -j"$CPU_CORES"
# 移动 deb
mkdir /tmp/deb-result
cp ../*.deb /tmp/deb-result
rm /tmp/deb-result/linux-libc-dev*.deb
rm /tmp/deb-result/*dbg*.deb
if [[ $2 == 1 ]]; then
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
mkdir dclc-kernel
mkdir dclc-kernel/$SHOWVERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$SHOWVERSION
cd dclc-kernel/$SHOWVERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: riscv64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-riscv64-loongson3-gfdgdxi-desktop-hwe, linux-image-$VERSION-riscv64-loongson3-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: 内核 $VERSION
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: riscv64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-riscv64-loongson3-gfdgdxi-desktop-hwe, linux-image-$VERSION-riscv64-loongson3-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: 内核 HWE $VERSION
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi-hwe_${VERSION}_riscv64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-$1-hwe_${VERSION}_riscv64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$SHOWVERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
touch l/linux-headers-$VERSION-riscv64-gfdgdxi-desktop-hwe/lock
rm -rfv l/linux-libc-dev/
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
else
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
#cd dclc-kernel
mkdir dclc-kernel
mkdir dclc-kernel/$VERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$VERSION
cd dclc-kernel/$VERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: riscv64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-riscv64-loongson3-gfdgdxi-desktop, linux-image-$VERSION-riscv64-loongson3-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: riscv64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-riscv64-loongson3-gfdgdxi-desktop, linux-image-$VERSION-riscv64-loongson3-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi_${VERSION}_riscv64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-${1}_${VERSION}_riscv64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$VERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
rm -rfv l/linux-libc-dev/
touch l/linux-headers-$VERSION-riscv64-gfdgdxi-desktop/lock
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
fi
+222
View File
@@ -0,0 +1,222 @@
#!/usr/bin/env bash
sudo rm -rfv "${GITHUB_WORKSPACE}"/linux*/
sudo rm -rfv /tmp/*
sed -i "/deb-src/s/# //g" /etc/apt/sources.list
sudo apt update
sudo apt install gpg python3-pyquery -y
aria2c $KEY
gpg --import --pinentry-mode loopback --batch --passphrase "$KEYPASSWORD" private-file.key
python3 get-newest-version.py $1
#VERSION=$(grep 'Kernel Configuration' < config | awk '{print $3}')
# add deb-src to sources.list
VERSION=`cat /tmp/kernelversion.txt`
URL=`cat /tmp/kernelurl.txt`
MAINVERSION=`expr substr $VERSION 1 1`
SHOWVERSION=$VERSION
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
SHOWVERSION=$VERSION-hwe
fi
if [[ $2 == 1 ]]; then
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1-hwe/linux-kernel-gxde-gfdgdxi-$1-hwe_${VERSION}_amd64.deb | grep 404
result=$?
else
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1/linux-kernel-gxde-gfdgdxi-${1}_${VERSION}_amd64.deb | grep 404
result=$?
fi
if [[ $result != 0 ]]; then
exit
fi
# install dep
sudo apt install -y wget xz-utils make gcc flex bison dpkg-dev bc rsync kmod cpio libssl-dev git lsb vim libelf-dev
sudo apt build-dep -y linux
# change dir to workplace
cd "${GITHUB_WORKSPACE}" || exit
# download kernel source
wget $URL
if [[ -f linux-"$VERSION".tar.xz ]]; then
tar -xf linux-"$VERSION".tar.xz
fi
if [[ -f linux-"$VERSION".tar.gz ]]; then
tar -xf linux-"$VERSION".tar.gz
fi
if [[ -f linux-"$VERSION".tar ]]; then
tar -xf linux-"$VERSION".tar
fi
if [[ -f linux-"$VERSION".bz2 ]]; then
tar -xf linux-"$VERSION".tar.bz2
fi
cd linux-"$VERSION" || exit
# copy config file
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
cp ../config-6.1.11-amd64-desktop-hwe .config
else
cp ../config .config
fi
echo $VERSION | grep 4.14
if [[ $? == 0 ]]; then
cp ../config-4.19.0-10-amd64 .config
fi
#
# disable DEBUG_INFO to speedup build
# scripts/config --disable DEBUG_INFO
scripts/config --set-str SYSTEM_TRUSTED_KEYS ""
scripts/config --set-str SYSTEM_REVOCATION_KEYS ""
scripts/config --undefine DEBUG_INFO
scripts/config --undefine DEBUG_INFO_COMPRESSED
scripts/config --undefine DEBUG_INFO_REDUCED
scripts/config --undefine DEBUG_INFO_SPLIT
scripts/config --undefine GDB_SCRIPTS
scripts/config --disable DEBUG_INFO
scripts/config --set-val DEBUG_INFO_DWARF5 n
scripts/config --set-val DEBUG_INFO_NONE y
# build deb packages
CPU_CORES=$(($(grep -c processor < /proc/cpuinfo)*2))
sudo env DEBEMAIL="gfdgd xi <3025613752@qq.com>" make bindeb-pkg -j"$CPU_CORES"
# 移动 deb
mkdir /tmp/deb-result
cp ../*.deb /tmp/deb-result
rm /tmp/deb-result/linux-libc-dev*.deb
rm /tmp/deb-result/*dbg*.deb
if [[ $2 == 1 ]]; then
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
mkdir dclc-kernel
mkdir dclc-kernel/$SHOWVERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$SHOWVERSION
cd dclc-kernel/$SHOWVERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-amd64-gfdgdxi-desktop-hwe, linux-image-$VERSION-amd64-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: 内核 $VERSION
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-amd64-gfdgdxi-desktop-hwe, linux-image-$VERSION-amd64-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: 内核 HWE $VERSION
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi-hwe_${VERSION}_amd64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-$1-hwe_${VERSION}_amd64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$SHOWVERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
touch l/linux-headers-$VERSION-amd64-gfdgdxi-desktop-hwe/lock
rm -rfv l/linux-libc-dev/
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
else
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
rm -rfv "${GITHUB_WORKSPACE}/linux-$VERSION*"
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
#cd dclc-kernel
mkdir dclc-kernel
mkdir dclc-kernel/$VERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$VERSION
cd dclc-kernel/$VERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-amd64-gfdgdxi-desktop, linux-image-$VERSION-amd64-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
if [[ ! -d deb-$MAINVERSION ]]; then
mkdir -pv deb-$MAINVERSION/DEBIAN
fi
cat > deb-$MAINVERSION/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-amd64-gfdgdxi-desktop, linux-image-$VERSION-amd64-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi_${VERSION}_amd64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION linux-kernel-gxde-gfdgdxi-${1}_${VERSION}_amd64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$VERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
rm -rfv l/linux-libc-dev/
touch l/linux-headers-$VERSION-amd64-gfdgdxi-desktop/lock
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
fi
+207
View File
@@ -0,0 +1,207 @@
#!/usr/bin/env bash
sudo rm -rfv "${GITHUB_WORKSPACE}"/linux*/
sudo rm -rfv /tmp/*
sed -i "/deb-src/s/# //g" /etc/apt/sources.list
sudo apt update
sudo apt install python3-pyquery python3-requests -y
sudo apt install gpg python3-pyquery -y
aria2c $KEY
gpg --import --pinentry-mode loopback --batch --passphrase "$KEYPASSWORD" private-file.key
python3 get-newest-version-xanmod.py $1
#curl https://www.xanmod.org/
#exit
#VERSION=$(grep 'Kernel Configuration' < config | awk '{print $3}')
# add deb-src to sources.list
#$1
VERSION=`cat /tmp/kernelversion.txt`
URL=`cat /tmp/kernelurl.txt`
MAINVERSION=`expr substr $VERSION 1 1`
SHOWVERSION=$VERSION
# 使用 deepin hwe config编译
if [[ $2 == 1 ]]; then
SHOWVERSION=$VERSION-hwe
fi
if [[ $2 == 1 ]]; then
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-$1-xanmod-hwe/linux-kernel-gxde-gfdgdxi-xanmod-$1-hwe_${VERSION}_amd64.deb | grep 404
result=$?
else
curl https://github.com/gfdgd-xi/gxde-linux-kernel/raw/main/l/linux-kernel-gxde-gfdgdxi-$1-xanmod/linux-kernel-gxde-gfdgdxi-xanmod-${1}_${VERSION}_amd64.deb | grep 404
result=$?
fi
if [[ $result != 0 ]]; then
exit
fi
# install dep
sudo apt install -y wget xz-utils make gcc flex bison dpkg-dev bc rsync kmod cpio libssl-dev git lsb vim libelf-dev
sudo apt build-dep -y linux
# change dir to workplace
cd "${GITHUB_WORKSPACE}" || exit
# download kernel source
wget $URL
tar -xf "$VERSION".tar.bz2
cd linux-"$VERSION"* || exit
# copy config file
if [[ $2 == 1 ]]; then
cp ../config-6.1.11-amd64-desktop-hwe .config
else
cp ../config .config
fi
#
# disable DEBUG_INFO to speedup build
scripts/config --set-str SYSTEM_TRUSTED_KEYS ""
scripts/config --set-str SYSTEM_REVOCATION_KEYS ""
scripts/config --undefine DEBUG_INFO
scripts/config --undefine DEBUG_INFO_COMPRESSED
scripts/config --undefine DEBUG_INFO_REDUCED
scripts/config --undefine DEBUG_INFO_SPLIT
scripts/config --undefine GDB_SCRIPTS
scripts/config --set-val DEBUG_INFO_DWARF5 n
scripts/config --set-val DEBUG_INFO_NONE y
# apply patches
# shellcheck source=src/util.sh
# source ../patch.d/*.sh
# build deb packages
CPU_CORES=$(($(grep -c processor < /proc/cpuinfo)*2))
sudo env DEBEMAIL="gfdgd xi <3025613752@qq.com>" make bindeb-pkg -j"$CPU_CORES"
# 移动 deb
mkdir /tmp/deb-result
cp ../*.deb /tmp/deb-result
rm /tmp/deb-result/linux-libc-dev*.deb
rm /tmp/deb-result/*dbg*.deb
if [[ $2 == 1 ]]; then
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
mkdir dclc-kernel
mkdir dclc-kernel/$SHOWVERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$SHOWVERSION
cd dclc-kernel/$SHOWVERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-xanmod-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-amd64-xanmod-gfdgdxi-desktop-hwe, linux-image-$VERSION-amd64-xanmod-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: Xanmod 内核 $VERSION
EOF
if [[ ! -d deb-$MAINVERSION-xanmod ]]; then
mkdir -pv deb-$MAINVERSION-xanmod/DEBIAN
fi
cat > deb-$MAINVERSION-xanmod/DEBIAN/control <<EOF
Package: linux-kernel-gxde-$1-xanmod-hwe
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-amd64-xanmod-gfdgdxi-desktop-hwe, linux-image-$VERSION-amd64-xanmod-gfdgdxi-desktop-hwe
Section: utils
Installed-Size: 0
Description: Xanmod HWE 内核 $VERSION
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi-xanmod-hwe_${VERSION}_amd64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION-xanmod linux-kernel-gxde-gfdgdxi-xanmod-$1-hwe_${VERSION}_amd64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$SHOWVERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
rm -rfv l/linux-libc-dev/
touch l/linux-headers-$VERSION-amd64-xanmod-gfdgdxi-desktop-hwe/lock
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
else
# move deb packages to artifact dir
cd ..
mkdir "artifact"
#cp ./*.deb artifact/
git clone https://gfdgd-xi:$PASSWORD@github.com/gfdgd-xi/gxde-linux-kernel --depth=1
#cd dclc-kernel
mkdir dclc-kernel/$VERSION
mkdir dclc-kernel/head
rm -rfv *dbg*.deb
mv ./*.deb dclc-kernel/$VERSION
cd dclc-kernel/$VERSION
cd ..
cd head
mkdir deb/DEBIAN -vp
cat > deb/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-xanmod
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-amd64-xanmod-gfdgdxi-desktop, linux-image-$VERSION-amd64-xanmod-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
if [[ ! -d deb-$MAINVERSION-xanmod ]]; then
mkdir -pv deb-$MAINVERSION-xanmod/DEBIAN
fi
cat > deb-$MAINVERSION-xanmod/DEBIAN/control <<EOF
Package: linux-kernel-gxde-gfdgdxi-$1-xanmod
Version: $VERSION
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-$VERSION-amd64-xanmod-desktop, linux-image-$VERSION-amd64-xanmod-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
EOF
dpkg-deb -Z xz -b deb linux-kernel-gxde-gfdgdxi-xanmod_${VERSION}_amd64.deb
dpkg-deb -Z xz -b deb-$MAINVERSION-xanmod linux-kernel-gxde-gfdgdxi-xanmod-${1}_${VERSION}_amd64.deb
cd ../../gxde-linux-kernel
#bash ./repack-zstd --scan .
#./build.py
./move-letter-path.py ../dclc-kernel/$VERSION/*.deb
./move-letter-path.py ../dclc-kernel/head/*.deb
./move-letter-path.py /tmp/deb-result/*.deb
rm -rfv l/linux-libc-dev/
touch l/linux-headers-$VERSION-amd64-xanmod-gfdgdxi-desktop/lock
git add .
#git pull
git config --global user.email 3025613752@qq.com
git config --global user.name gfdgd-xi
git commit -m 提交$VERSION
git push
fi
+31
View File
@@ -0,0 +1,31 @@
#!/usr/bin/env bash
VERSION=$(grep 'Kernel Configuration' < /boot/config-"$(uname -r)" | awk '{print $3}')
# add deb-src to sources.list
echo "deb-src https://home-packages.chinauos.com/home plum main contrib non-free" >> /etc/apt/sources.list
# install dep
sudo apt update
sudo apt install -y wget
sudo apt build-dep -y linux
# download kernel source
wget http://www.kernel.org/pub/linux/kernel/v5.x/linux-"$VERSION".tar.xz
tar -xf linux-"$VERSION".tar.xz
cd linux-"$VERSION" || exit
# copy config file
cp /boot/config-"$(uname -r)" .config
# change version string
sed -i "s/-desktop/-debuggerx/g" .config
# reduce ACPI_MAX_LOOP_TIMEOUT value
sed -i "/ACPI_MAX_LOOP_TIMEOUT/s/30/3/g" include/acpi/acconfig.h
# disable DEBUG_INFO to speedup build
scripts/config --disable DEBUG_INFO
CPU_CORES=$(grep -c processor < /proc/cpuinfo)
make deb-pkg -j"$CPU_CORES"
+11041
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+11041
View File
File diff suppressed because it is too large Load Diff
+9705
View File
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
+5877
View File
File diff suppressed because it is too large Load Diff
+6376
View File
File diff suppressed because it is too large Load Diff
+11041
View File
File diff suppressed because it is too large Load Diff
+14
View File
@@ -0,0 +1,14 @@
Package: linux-kernel-gxde-gfdgdxi-0
Version: 6.10-rc5
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-6.10-rc5-amd64-gfdgdxi-desktop, linux-image-6.10-rc5-amd64-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
+14
View File
@@ -0,0 +1,14 @@
Package: linux-kernel-gxde-gfdgdxi
Version: 6.10-rc5
Maintainer: gfdgd xi <3025613752@qq.com>
Homepage: https://github.com/gfdgd-xi/dclc-kernel
Architecture: amd64
Severity: serious
Certainty: possible
Check: binaries
Type: binary, udeb
Priority: optional
Depends: linux-headers-6.10-rc5-amd64-gfdgdxi-desktop, linux-image-6.10-rc5-amd64-gfdgdxi-desktop
Section: utils
Installed-Size: 0
Description: 内核(虚包)
-6
View File
@@ -1,6 +0,0 @@
gxde-kernel-manager (1.0.1) UNRELEASED; urgency=medium
* Initial release. (Closes: #nnnn) <nnnn is the bug number of your ITP>
*
-- gfdgd_xi <3025613752@qq.com> Fri, 03 May 2024 18:57:33 +0800
-24
View File
@@ -1,24 +0,0 @@
Source: gxde-kernel-manager
Section: utils
Priority: optional
Maintainer: gfdgd_xi <3025613752@qq.com>
Rules-Requires-Root: no
Build-Depends:
debhelper-compat (= 10),
qtbase5-dev,
qtbase5-dev-tools,
qtbase5-private-dev,
libqtermwidget5-1-dev | libqtermwidget5-0-dev,
qttools5-dev-tools
Standards-Version: 4.6.2
Homepage: https://gitee.com/GXDE-OS/gxde-kernel-manager
#Vcs-Browser: https://salsa.debian.org/debian/gxde-kernel-manager
#Vcs-Git: https://salsa.debian.org/debian/gxde-kernel-manager.git
Package: gxde-kernel-manager
Architecture: any
Depends:
${shlibs:Depends},
${misc:Depends},
Description: GXDE 内核管理器
-43
View File
@@ -1,43 +0,0 @@
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Source: <url://example.com>
Upstream-Name: gxde-kernel-manager
Upstream-Contact: <preferred name and address to reach the upstream project>
Files:
*
Copyright:
<years> <put author's name and email here>
<years> <likewise for another author>
License: GPL-3.0+
Files:
debian/*
Copyright:
2024 gfdgd_xi <3025613752@qq.com>
License: GPL-3.0+
License: GPL-3.0+
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 package 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 <https://www.gnu.org/licenses/>.
Comment:
On Debian systems, the complete text of the GNU General
Public License version 3 can be found in "/usr/share/common-licenses/GPL-3".
# Please also look if there are files or directories which have a
# different copyright/license attached and list them here.
# Please avoid picking licenses with terms that are more restrictive than the
# packaged work, as it may make Debian's contributions unacceptable upstream.
#
# If you need, there are some extra license texts available in two places:
# /usr/share/debhelper/dh_make/licenses/
# /usr/share/common-licenses/
-26
View File
@@ -1,26 +0,0 @@
#!/usr/bin/make -f
# See debhelper(7) (uncomment to enable).
# Output every command that modifies files on the build system.
#export DH_VERBOSE = 1
# See FEATURE AREAS in dpkg-buildflags(1).
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
# See ENVIRONMENT in dpkg-buildflags(1).
# Package maintainers to append CFLAGS.
#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
# Package maintainers to append LDFLAGS.
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
%:
dh $@
# dh_make generated override targets.
# This is an example for Cmake (see <https://bugs.debian.org/641051>).
#override_dh_auto_configure:
# dh_auto_configure -- \
# -DCMAKE_LIBRARY_PATH=$(DEB_HOST_MULTIARCH)
+33
View File
@@ -0,0 +1,33 @@
#!/usr/bin/env python3
import os
import sys
import requests
import pyquery
mainVersion = int(sys.argv[1])
headers = {
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.87 Safari/537.36',
'Accept': 'text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8'
}
get = requests.get("https://www.xanmod.org/", headers=headers).text
programVersionList = pyquery.PyQuery(get)
print(programVersionList)
#release = pyquery.PyQuery()
temp = 0
newestVersion = "0.0.0"
newestUrl = ""
for i in programVersionList(f"#content div.page div.level3 :first-child td a").items():
print(i)
if ".tar" in i.attr.href:
if temp == mainVersion:
newestVersion = os.path.splitext(os.path.splitext(os.path.basename(i.attr.href))[0])[0]
newestUrl = i.attr.href
break
temp += 1
#print(i)
print(newestVersion)
print(newestUrl)
with open("/tmp/kernelversion.txt", "w") as file:
file.write(newestVersion.replace("\n", "").replace(" ", ""))
with open("/tmp/kernelurl.txt", "w") as file:
file.write(newestUrl.replace("\n", "").replace(" ", ""))
+34
View File
@@ -0,0 +1,34 @@
#!/usr/bin/env python3
import sys
import pyquery
mainVersion = int(sys.argv[1])
programVersionList = pyquery.PyQuery(url=f"https://www.kernel.org/")
#release = pyquery.PyQuery()
temp = 0
newestVersion = "0.0.0"
newestUrl = ""
for i in programVersionList(f"#releases tr :nth-child(2)").items():
version = i("td strong").text()
if temp == mainVersion:
#print(version)
version = version.strip()
newestVersion = version
if " " in version:
newestVersion = version.split(" ")[0]
break
temp += 1
temp = 0
for i in programVersionList(f"#releases tr :nth-child(4)").items():
url = i("td a").attr.href
if temp == mainVersion:
newestUrl = url
break
temp += 1
print(newestVersion)
print(newestUrl)
with open("/tmp/kernelversion.txt", "w") as file:
file.write(newestVersion)
with open("/tmp/kernelurl.txt", "w") as file:
file.write(newestUrl)
-8
View File
@@ -1,8 +0,0 @@
#!/bin/bash
set -e
programPath=$(cd $(dirname $0); pwd)
arch=$(dpkg --print-architecture)
if [[ -d "$programPath/lib/$arch" ]]; then
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$programPath/lib/$arch
fi
$programPath/gxde-kernel-manager
-10
View File
@@ -1,10 +0,0 @@
[Desktop Entry]
Version=1.0
Name=GXDE Kernel Manager
Name[zh_CN]=GXDE 内核管理器
Comment=GXDE Kernel Manager
Comment[zh_CN]=GXDE 内核管理器
Type=Application
Exec=bash /opt/apps/gxde-kernel-manager/gxde-kernel-manager-runner.sh
Icon=/opt/apps/gxde-kernel-manager/icon.svg
Categories=System
-68
View File
@@ -1,68 +0,0 @@
QT += core gui network
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
CONFIG += c++17
# You can make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0
SOURCES += \
aboutwindow.cpp \
kernelinformation.cpp \
kernelinstaller.cpp \
main.cpp \
mainwindow.cpp
HEADERS += \
aboutwindow.h \
kernelinformation.h \
kernelinstaller.h \
mainwindow.h
FORMS += \
aboutwindow.ui \
kernelinstaller.ui \
mainwindow.ui
# 更新翻译
system(lrelease translation/gxde-kernel-manager_zh_CN.ts translation/gxde-kernel-manager_zh_CN.qm)
# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target
unix:!macx: LIBS += -lqtermwidget5
aptsource.path = /etc/apt/sources.list.d/
aptsource.files = $$PWD/AptSources/gxde-kernel-manager.list
aptsourcegpg.path = /etc/apt/trusted.gpg.d/
aptsourcegpg.files = $$PWD/AptSources/gxde-kernel-manager.gpg
debiandesktop.path = /usr/share/applications/
debiandesktop.files = $$PWD/gxde-kernel-manager.desktop
uosdesktop.path = /opt/apps/gxde-kernel-manager/entries/applications
uosdesktop.files = $$PWD/gxde-kernel-manager.desktop
icon.path = /opt/apps/gxde-kernel-manager/
icon.files = $$PWD/icon/icon.svg
targetrunner.path = /opt/apps/gxde-kernel-manager/
targetrunner.files = $$PWD/gxde-kernel-manager-runner.sh
#libinclude.path = /opt/apps/gxde-kernel-manager/
#libinclude.files = $$PWD/lib
target.path = /opt/apps/gxde-kernel-manager/
INSTALLS += aptsourcegpg aptsource target debiandesktop uosdesktop icon targetrunner
TRANSLATIONS += translation/gxde-kernel-manager_zh_CN.ts
RESOURCES += \
Resource.qrc
-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="64px" height="64px" viewBox="0 0 64 64" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 41.2 (35397) - http://www.bohemiancoding.com/sketch -->
<title>dialog-apply</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="dialog-apply">
<image id="Bitmap" x="1" y="2" width="62" height="62" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA+CAYAAABzwahEAAAABGdBTUEAA1teXP8meAAABQhJREFUaAXlmol2ozAMANu973v//yv3ProammEVAwWT5hVcvacaHFvWSLKhaS8vziuXhfnyvvj44qroKO+Lj9ffzjlSaznb47pU7DnGVrjccp2VeYhjru9O+OniJ5jopmqHVn0Q1ygixN+4RhEhnOt45zPG8c53ji1jVomLrpock5yvszj/8GDsT7S/Q9c6ic1HodkegTAIcbnadu84RmqkBMY5FMd+Hdpobk0I6ONQWgKKnhQAAcLOYnGOpWlGfoYFy3ixscqBrPnkMAd4twJdVZWl0wdbsw3QKPMsQzKMVi0c49cIa7h9qACTUG2rBjxDsyhOfD+01QufOMEAEHwUqQr8EnCBzTTQlBmlfdeCH+5/wIWfrYQacCILNMCU9lbEg869L/yN/s2Bm21LitJmoa0Jhxx+LYa/CVxoxmCQTG8ROtzqxFLHV68PHw2bKfAMTXlzkm6pvIck1z1kHt89fCfLfgyciQifaeBH17OPH1QlvqNmXqaegBNxTOhnIi37em+Cz5lh4D9wWXKJs1fI9LnfxvL6t3lNtp8e/B+U/FjGgecUZzB7e6/iGx4sN5Z6zjaD91jiZZJggIXKlq8bU2acDxnEAbHlR1fn/IIfcgjeTxHcaDCglWwLOZp1wRkEvPd7PdCEza0ssMHYiaDc0Em29/Cigr81AhNsA3CzTalv4beuGqglY2GCrc+6F4LzCLM0lhjcyxiZel5LXXAH7AWoxk9OeMH7w+w+gJPUSfAWnt1TVTDIONlGiMZ9AIf1Mu9xAjB4mWdUIwIbjF2iBYeNjpYPN9g6aGAF7zvobFwGGYfXQLTIfsTmjXu75czL1rEKTobp4LWuVYHNBPelTQfKl4util+cdvBk3Chw6rWecZ9aV5Y68HTyq1urAhuMfcYBFZxAGAz6WxG5JsF5ZX3eCm3igAm2I3Cybcb58FloawJTBh/scT7kgGvpkJMngx/tZ7LOl/Do69BWBBa5YOwkH2SWO1/MURotnPAwwAJTv7/jerSkebWjPJjwLXTP8j6cB5i/AfonpS7rOeMA0sle4FtJ3nT8D4O43J3gOwz+Q0Nf5pBMHWJknaDwGPgaukf5EE6TZcCPsg1MmXH6iIwTCMA7Oncm+IzvGfoIYSrjDmLyi1CCsZe/sLwMX1+F8jezXOazpQ7s0aCDIY3E7WaFfwTgQAPaA43DbSBTGQdeIQjc8zzklB81FP13LTy6PocCDDjbVV/LRE4ebjGnEyaonAdvQreYeTINNL4Bzbbk6aTvcXksUxnPo4wWLZl/G0okWWQLwn7+GGqmZ6Fxegk444ycpUPZM5fo3qWwn6lCtqCZHjy6xhxcAu5+z/AEgGc8J6gRHrN/rj5Lm5cU3jOEtrxn110Cno2U8Myn9Hm9pfStiLg8i/Am9imUNcksmfb0FhofZ6UWHIMlPLCcqLw00BKARYvHuKWCXcqatzHWI8Moa3l661d0zYtlPD/y/wjncMqjOIVSdvn9+EvcU4ZkYo2QFF6e2E7YZUsBKqzAVllVsIUIe1XiPFoUJ1ECQDmq9OEgzuo49wRDhwmecw0cLbYYxzzVuWVZV0GHvc5p2rVSBiBD5GBwbYUYLOdaorQEAwUsQ3rNZ46Py/VbysUxcopoJ0MJWraOyesJI3jZ+jktYnt9t+KnDq+YOjol2xMwt0xyjK0QueU6q4s5xvvVrYuvNjAzsbRf3pfTS7Dyvhy/+v4fra1pWYxQ1MYAAAAASUVORK5CYII="></image>
<ellipse id="Oval" fill="#59D2C6" cx="32" cy="32" rx="28" ry="28"></ellipse>
<polyline id="Path-5" stroke="#FFFFFF" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" points="44 22 44 34 27 34"></polyline>
<path d="M15.5810585,35.2161988 C14.707864,34.5445108 14.7174539,33.4481124 15.5810585,32.7838012 L25.4189415,25.2161988 C26.292136,24.5445108 27,24.8982124 27,25.9907951 L27,42.0092049 C27,43.1086907 26.2825461,43.4481124 25.4189415,42.7838012 L15.5810585,35.2161988 Z" id="Triangle" fill="#FFFFFF"></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.9 KiB

-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="64px" height="64px" viewBox="0 0 64 64" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 41.2 (35397) - http://www.bohemiancoding.com/sketch -->
<title>dialog-cancel</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="dialog-cancel">
<image id="Bitmap" x="1" y="2" width="62" height="62" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA+CAYAAABzwahEAAAABGdBTUEAA1teXP8meAAABQhJREFUaAXlmol2ozAMANu973v//yv3ProammEVAwWT5hVcvacaHFvWSLKhaS8vziuXhfnyvvj44qroKO+Lj9ffzjlSaznb47pU7DnGVrjccp2VeYhjru9O+OniJ5jopmqHVn0Q1ygixN+4RhEhnOt45zPG8c53ji1jVomLrpock5yvszj/8GDsT7S/Q9c6ic1HodkegTAIcbnadu84RmqkBMY5FMd+Hdpobk0I6ONQWgKKnhQAAcLOYnGOpWlGfoYFy3ixscqBrPnkMAd4twJdVZWl0wdbsw3QKPMsQzKMVi0c49cIa7h9qACTUG2rBjxDsyhOfD+01QufOMEAEHwUqQr8EnCBzTTQlBmlfdeCH+5/wIWfrYQacCILNMCU9lbEg869L/yN/s2Bm21LitJmoa0Jhxx+LYa/CVxoxmCQTG8ROtzqxFLHV68PHw2bKfAMTXlzkm6pvIck1z1kHt89fCfLfgyciQifaeBH17OPH1QlvqNmXqaegBNxTOhnIi37em+Cz5lh4D9wWXKJs1fI9LnfxvL6t3lNtp8e/B+U/FjGgecUZzB7e6/iGx4sN5Z6zjaD91jiZZJggIXKlq8bU2acDxnEAbHlR1fn/IIfcgjeTxHcaDCglWwLOZp1wRkEvPd7PdCEza0ssMHYiaDc0Em29/Cigr81AhNsA3CzTalv4beuGqglY2GCrc+6F4LzCLM0lhjcyxiZel5LXXAH7AWoxk9OeMH7w+w+gJPUSfAWnt1TVTDIONlGiMZ9AIf1Mu9xAjB4mWdUIwIbjF2iBYeNjpYPN9g6aGAF7zvobFwGGYfXQLTIfsTmjXu75czL1rEKTobp4LWuVYHNBPelTQfKl4util+cdvBk3Chw6rWecZ9aV5Y68HTyq1urAhuMfcYBFZxAGAz6WxG5JsF5ZX3eCm3igAm2I3Cybcb58FloawJTBh/scT7kgGvpkJMngx/tZ7LOl/Do69BWBBa5YOwkH2SWO1/MURotnPAwwAJTv7/jerSkebWjPJjwLXTP8j6cB5i/AfonpS7rOeMA0sle4FtJ3nT8D4O43J3gOwz+Q0Nf5pBMHWJknaDwGPgaukf5EE6TZcCPsg1MmXH6iIwTCMA7Oncm+IzvGfoIYSrjDmLyi1CCsZe/sLwMX1+F8jezXOazpQ7s0aCDIY3E7WaFfwTgQAPaA43DbSBTGQdeIQjc8zzklB81FP13LTy6PocCDDjbVV/LRE4ebjGnEyaonAdvQreYeTINNL4Bzbbk6aTvcXksUxnPo4wWLZl/G0okWWQLwn7+GGqmZ6Fxegk444ycpUPZM5fo3qWwn6lCtqCZHjy6xhxcAu5+z/AEgGc8J6gRHrN/rj5Lm5cU3jOEtrxn110Cno2U8Myn9Hm9pfStiLg8i/Am9imUNcksmfb0FhofZ6UWHIMlPLCcqLw00BKARYvHuKWCXcqatzHWI8Moa3l661d0zYtlPD/y/wjncMqjOIVSdvn9+EvcU4ZkYo2QFF6e2E7YZUsBKqzAVllVsIUIe1XiPFoUJ1ECQDmq9OEgzuo49wRDhwmecw0cLbYYxzzVuWVZV0GHvc5p2rVSBiBD5GBwbYUYLOdaorQEAwUsQ3rNZ46Py/VbysUxcopoJ0MJWraOyesJI3jZ+jktYnt9t+KnDq+YOjol2xMwt0xyjK0QueU6q4s5xvvVrYuvNjAzsbRf3pfTS7Dyvhy/+v4fra1pWYxQ1MYAAAAASUVORK5CYII="></image>
<ellipse id="Oval" fill="#E04141" cx="32" cy="32" rx="28" ry="28"></ellipse>
<path d="M42.4871169,40.0184985 C43.1684837,40.6998652 43.1732122,41.7998504 42.4870678,42.4859947 C41.805674,43.1673886 40.7030688,43.1695411 40.0195716,42.4860438 L21.5128831,23.9793553 C20.8315163,23.2979886 20.8267878,22.1980034 21.5129322,21.5118591 C22.194326,20.8304652 23.2969312,20.8283127 23.9804284,21.5118099 L42.4871169,40.0184985 Z" id="Rectangle" fill="#FFFFFF"></path>
<circle id="Oval-3" stroke="#FFFFFF" stroke-width="3" cx="32" cy="32" r="14.5"></circle>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.9 KiB

-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="64px" height="64px" viewBox="0 0 64 64" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 41.2 (35397) - http://www.bohemiancoding.com/sketch -->
<title>dialog-error</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="dialog-error">
<image id="Bitmap" x="1" y="2" width="62" height="62" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA+CAYAAABzwahEAAAABGdBTUEAA1teXP8meAAABQhJREFUaAXlmol2ozAMANu973v//yv3ProammEVAwWT5hVcvacaHFvWSLKhaS8vziuXhfnyvvj44qroKO+Lj9ffzjlSaznb47pU7DnGVrjccp2VeYhjru9O+OniJ5jopmqHVn0Q1ygixN+4RhEhnOt45zPG8c53ji1jVomLrpock5yvszj/8GDsT7S/Q9c6ic1HodkegTAIcbnadu84RmqkBMY5FMd+Hdpobk0I6ONQWgKKnhQAAcLOYnGOpWlGfoYFy3ixscqBrPnkMAd4twJdVZWl0wdbsw3QKPMsQzKMVi0c49cIa7h9qACTUG2rBjxDsyhOfD+01QufOMEAEHwUqQr8EnCBzTTQlBmlfdeCH+5/wIWfrYQacCILNMCU9lbEg869L/yN/s2Bm21LitJmoa0Jhxx+LYa/CVxoxmCQTG8ROtzqxFLHV68PHw2bKfAMTXlzkm6pvIck1z1kHt89fCfLfgyciQifaeBH17OPH1QlvqNmXqaegBNxTOhnIi37em+Cz5lh4D9wWXKJs1fI9LnfxvL6t3lNtp8e/B+U/FjGgecUZzB7e6/iGx4sN5Z6zjaD91jiZZJggIXKlq8bU2acDxnEAbHlR1fn/IIfcgjeTxHcaDCglWwLOZp1wRkEvPd7PdCEza0ssMHYiaDc0Em29/Cigr81AhNsA3CzTalv4beuGqglY2GCrc+6F4LzCLM0lhjcyxiZel5LXXAH7AWoxk9OeMH7w+w+gJPUSfAWnt1TVTDIONlGiMZ9AIf1Mu9xAjB4mWdUIwIbjF2iBYeNjpYPN9g6aGAF7zvobFwGGYfXQLTIfsTmjXu75czL1rEKTobp4LWuVYHNBPelTQfKl4util+cdvBk3Chw6rWecZ9aV5Y68HTyq1urAhuMfcYBFZxAGAz6WxG5JsF5ZX3eCm3igAm2I3Cybcb58FloawJTBh/scT7kgGvpkJMngx/tZ7LOl/Do69BWBBa5YOwkH2SWO1/MURotnPAwwAJTv7/jerSkebWjPJjwLXTP8j6cB5i/AfonpS7rOeMA0sle4FtJ3nT8D4O43J3gOwz+Q0Nf5pBMHWJknaDwGPgaukf5EE6TZcCPsg1MmXH6iIwTCMA7Oncm+IzvGfoIYSrjDmLyi1CCsZe/sLwMX1+F8jezXOazpQ7s0aCDIY3E7WaFfwTgQAPaA43DbSBTGQdeIQjc8zzklB81FP13LTy6PocCDDjbVV/LRE4ebjGnEyaonAdvQreYeTINNL4Bzbbk6aTvcXksUxnPo4wWLZl/G0okWWQLwn7+GGqmZ6Fxegk444ycpUPZM5fo3qWwn6lCtqCZHjy6xhxcAu5+z/AEgGc8J6gRHrN/rj5Lm5cU3jOEtrxn110Cno2U8Myn9Hm9pfStiLg8i/Am9imUNcksmfb0FhofZ6UWHIMlPLCcqLw00BKARYvHuKWCXcqatzHWI8Moa3l661d0zYtlPD/y/wjncMqjOIVSdvn9+EvcU4ZkYo2QFF6e2E7YZUsBKqzAVllVsIUIe1XiPFoUJ1ECQDmq9OEgzuo49wRDhwmecw0cLbYYxzzVuWVZV0GHvc5p2rVSBiBD5GBwbYUYLOdaorQEAwUsQ3rNZ46Py/VbysUxcopoJ0MJWraOyesJI3jZ+jktYnt9t+KnDq+YOjol2xMwt0xyjK0QueU6q4s5xvvVrYuvNjAzsbRf3pfTS7Dyvhy/+v4fra1pWYxQ1MYAAAAASUVORK5CYII="></image>
<ellipse id="Oval" fill="#C51818" cx="32" cy="32" rx="28" ry="28"></ellipse>
<path d="M40.7494771,20.5594658 C41.4928588,19.8160841 42.6929596,19.8109252 43.4415538,20.5595194 C44.1849651,21.3029306 44.1873135,22.50589 43.4416074,23.2515961 L23.2505229,43.4426806 C22.5071412,44.1860623 21.3070404,44.1912212 20.5584462,43.442627 C19.8150349,42.6992158 19.8126865,41.4962564 20.5583926,40.7505503 L40.7494771,20.5594658 Z" id="Rectangle" fill="#FFFFFF"></path>
<path d="M43.4405842,40.7476216 C44.1838994,41.4909368 44.1890579,42.6909303 43.4405307,43.4394576 C42.6971859,44.1828023 41.4943341,44.1851506 40.7486947,43.4395111 L20.5594158,23.2502322 C19.8161006,22.506917 19.8109421,21.3069235 20.5594693,20.5583962 C21.3028141,19.8150515 22.5056659,19.8127032 23.2513053,20.5583427 L43.4405842,40.7476216 Z" id="Rectangle" fill="#FFFFFF"></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.2 KiB

-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="64px" height="64px" viewBox="0 0 64 64" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 41.2 (35397) - http://www.bohemiancoding.com/sketch -->
<title>dialog-information</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="dialog-information">
<image id="Bitmap" x="1" y="2" width="62" height="62" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA+CAYAAABzwahEAAAABGdBTUEAA1teXP8meAAABQhJREFUaAXlmol2ozAMANu973v//yv3ProammEVAwWT5hVcvacaHFvWSLKhaS8vziuXhfnyvvj44qroKO+Lj9ffzjlSaznb47pU7DnGVrjccp2VeYhjru9O+OniJ5jopmqHVn0Q1ygixN+4RhEhnOt45zPG8c53ji1jVomLrpock5yvszj/8GDsT7S/Q9c6ic1HodkegTAIcbnadu84RmqkBMY5FMd+Hdpobk0I6ONQWgKKnhQAAcLOYnGOpWlGfoYFy3ixscqBrPnkMAd4twJdVZWl0wdbsw3QKPMsQzKMVi0c49cIa7h9qACTUG2rBjxDsyhOfD+01QufOMEAEHwUqQr8EnCBzTTQlBmlfdeCH+5/wIWfrYQacCILNMCU9lbEg869L/yN/s2Bm21LitJmoa0Jhxx+LYa/CVxoxmCQTG8ROtzqxFLHV68PHw2bKfAMTXlzkm6pvIck1z1kHt89fCfLfgyciQifaeBH17OPH1QlvqNmXqaegBNxTOhnIi37em+Cz5lh4D9wWXKJs1fI9LnfxvL6t3lNtp8e/B+U/FjGgecUZzB7e6/iGx4sN5Z6zjaD91jiZZJggIXKlq8bU2acDxnEAbHlR1fn/IIfcgjeTxHcaDCglWwLOZp1wRkEvPd7PdCEza0ssMHYiaDc0Em29/Cigr81AhNsA3CzTalv4beuGqglY2GCrc+6F4LzCLM0lhjcyxiZel5LXXAH7AWoxk9OeMH7w+w+gJPUSfAWnt1TVTDIONlGiMZ9AIf1Mu9xAjB4mWdUIwIbjF2iBYeNjpYPN9g6aGAF7zvobFwGGYfXQLTIfsTmjXu75czL1rEKTobp4LWuVYHNBPelTQfKl4util+cdvBk3Chw6rWecZ9aV5Y68HTyq1urAhuMfcYBFZxAGAz6WxG5JsF5ZX3eCm3igAm2I3Cybcb58FloawJTBh/scT7kgGvpkJMngx/tZ7LOl/Do69BWBBa5YOwkH2SWO1/MURotnPAwwAJTv7/jerSkebWjPJjwLXTP8j6cB5i/AfonpS7rOeMA0sle4FtJ3nT8D4O43J3gOwz+Q0Nf5pBMHWJknaDwGPgaukf5EE6TZcCPsg1MmXH6iIwTCMA7Oncm+IzvGfoIYSrjDmLyi1CCsZe/sLwMX1+F8jezXOazpQ7s0aCDIY3E7WaFfwTgQAPaA43DbSBTGQdeIQjc8zzklB81FP13LTy6PocCDDjbVV/LRE4ebjGnEyaonAdvQreYeTINNL4Bzbbk6aTvcXksUxnPo4wWLZl/G0okWWQLwn7+GGqmZ6Fxegk444ycpUPZM5fo3qWwn6lCtqCZHjy6xhxcAu5+z/AEgGc8J6gRHrN/rj5Lm5cU3jOEtrxn110Cno2U8Myn9Hm9pfStiLg8i/Am9imUNcksmfb0FhofZ6UWHIMlPLCcqLw00BKARYvHuKWCXcqatzHWI8Moa3l661d0zYtlPD/y/wjncMqjOIVSdvn9+EvcU4ZkYo2QFF6e2E7YZUsBKqzAVllVsIUIe1XiPFoUJ1ECQDmq9OEgzuo49wRDhwmecw0cLbYYxzzVuWVZV0GHvc5p2rVSBiBD5GBwbYUYLOdaorQEAwUsQ3rNZ46Py/VbysUxcopoJ0MJWraOyesJI3jZ+jktYnt9t+KnDq+YOjol2xMwt0xyjK0QueU6q4s5xvvVrYuvNjAzsbRf3pfTS7Dyvhy/+v4fra1pWYxQ1MYAAAAASUVORK5CYII="></image>
<ellipse id="Oval" fill="#988AD3" cx="32" cy="32" rx="28" ry="28"></ellipse>
<path d="M39,41.5 C39.1075261,41.9690455 38.3560093,42.5622173 36.5,44 C34.0039875,45.9532142 32.633344,46.5 30.5,46.5 C28.9426589,46.5 27.936,45.3421565 27.936,44.0264496 C27.936,41 31,31.0055951 31,29.5 C31,27.6918926 26,32 25.5,30.5 C25.2400137,29.720041 25.199988,29.4927164 27.6,28.0956256 C30.000012,26.6985349 31.9146595,26 33.344,26 C34.944008,26 35.744,26.7053168 35.744,28.1159715 C35.744,31 31.628,43 33.344,43 C34.544,43.9994914 38.5,39.3189217 39,41.5 Z" id="i" fill="#FFFFFF"></path>
<circle id="Oval-2" fill="#FFFFFF" cx="33" cy="20" r="3"></circle>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.0 KiB

-14
View File
@@ -1,14 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="64px" height="64px" viewBox="0 0 64 64" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 41.2 (35397) - http://www.bohemiancoding.com/sketch -->
<title>dialog-ok</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="dialog-ok">
<image id="Bitmap" x="1" y="2" width="62" height="62" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA+CAYAAABzwahEAAAABGdBTUEAA1teXP8meAAABQhJREFUaAXlmol2ozAMANu973v//yv3ProammEVAwWT5hVcvacaHFvWSLKhaS8vziuXhfnyvvj44qroKO+Lj9ffzjlSaznb47pU7DnGVrjccp2VeYhjru9O+OniJ5jopmqHVn0Q1ygixN+4RhEhnOt45zPG8c53ji1jVomLrpock5yvszj/8GDsT7S/Q9c6ic1HodkegTAIcbnadu84RmqkBMY5FMd+Hdpobk0I6ONQWgKKnhQAAcLOYnGOpWlGfoYFy3ixscqBrPnkMAd4twJdVZWl0wdbsw3QKPMsQzKMVi0c49cIa7h9qACTUG2rBjxDsyhOfD+01QufOMEAEHwUqQr8EnCBzTTQlBmlfdeCH+5/wIWfrYQacCILNMCU9lbEg869L/yN/s2Bm21LitJmoa0Jhxx+LYa/CVxoxmCQTG8ROtzqxFLHV68PHw2bKfAMTXlzkm6pvIck1z1kHt89fCfLfgyciQifaeBH17OPH1QlvqNmXqaegBNxTOhnIi37em+Cz5lh4D9wWXKJs1fI9LnfxvL6t3lNtp8e/B+U/FjGgecUZzB7e6/iGx4sN5Z6zjaD91jiZZJggIXKlq8bU2acDxnEAbHlR1fn/IIfcgjeTxHcaDCglWwLOZp1wRkEvPd7PdCEza0ssMHYiaDc0Em29/Cigr81AhNsA3CzTalv4beuGqglY2GCrc+6F4LzCLM0lhjcyxiZel5LXXAH7AWoxk9OeMH7w+w+gJPUSfAWnt1TVTDIONlGiMZ9AIf1Mu9xAjB4mWdUIwIbjF2iBYeNjpYPN9g6aGAF7zvobFwGGYfXQLTIfsTmjXu75czL1rEKTobp4LWuVYHNBPelTQfKl4util+cdvBk3Chw6rWecZ9aV5Y68HTyq1urAhuMfcYBFZxAGAz6WxG5JsF5ZX3eCm3igAm2I3Cybcb58FloawJTBh/scT7kgGvpkJMngx/tZ7LOl/Do69BWBBa5YOwkH2SWO1/MURotnPAwwAJTv7/jerSkebWjPJjwLXTP8j6cB5i/AfonpS7rOeMA0sle4FtJ3nT8D4O43J3gOwz+Q0Nf5pBMHWJknaDwGPgaukf5EE6TZcCPsg1MmXH6iIwTCMA7Oncm+IzvGfoIYSrjDmLyi1CCsZe/sLwMX1+F8jezXOazpQ7s0aCDIY3E7WaFfwTgQAPaA43DbSBTGQdeIQjc8zzklB81FP13LTy6PocCDDjbVV/LRE4ebjGnEyaonAdvQreYeTINNL4Bzbbk6aTvcXksUxnPo4wWLZl/G0okWWQLwn7+GGqmZ6Fxegk444ycpUPZM5fo3qWwn6lCtqCZHjy6xhxcAu5+z/AEgGc8J6gRHrN/rj5Lm5cU3jOEtrxn110Cno2U8Myn9Hm9pfStiLg8i/Am9imUNcksmfb0FhofZ6UWHIMlPLCcqLw00BKARYvHuKWCXcqatzHWI8Moa3l661d0zYtlPD/y/wjncMqjOIVSdvn9+EvcU4ZkYo2QFF6e2E7YZUsBKqzAVllVsIUIe1XiPFoUJ1ECQDmq9OEgzuo49wRDhwmecw0cLbYYxzzVuWVZV0GHvc5p2rVSBiBD5GBwbYUYLOdaorQEAwUsQ3rNZ46Py/VbysUxcopoJ0MJWraOyesJI3jZ+jktYnt9t+KnDq+YOjol2xMwt0xyjK0QueU6q4s5xvvVrYuvNjAzsbRf3pfTS7Dyvhy/+v4fra1pWYxQ1MYAAAAASUVORK5CYII="></image>
<ellipse id="Oval" fill="#7ED321" cx="32" cy="32" rx="28" ry="28"></ellipse>
<polyline id="Path-4" stroke="#FFFFFF" stroke-width="4" stroke-linecap="round" stroke-linejoin="round" points="18 32 27.5104121 42.0104121 46 23"></polyline>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.6 KiB

-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="64px" height="64px" viewBox="0 0 64 64" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 41.2 (35397) - http://www.bohemiancoding.com/sketch -->
<title>dialog-question</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="dialog-question">
<image id="Bitmap" x="1" y="2" width="62" height="62" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA+CAYAAABzwahEAAAABGdBTUEAA1teXP8meAAABQhJREFUaAXlmol2ozAMANu973v//yv3ProammEVAwWT5hVcvacaHFvWSLKhaS8vziuXhfnyvvj44qroKO+Lj9ffzjlSaznb47pU7DnGVrjccp2VeYhjru9O+OniJ5jopmqHVn0Q1ygixN+4RhEhnOt45zPG8c53ji1jVomLrpock5yvszj/8GDsT7S/Q9c6ic1HodkegTAIcbnadu84RmqkBMY5FMd+Hdpobk0I6ONQWgKKnhQAAcLOYnGOpWlGfoYFy3ixscqBrPnkMAd4twJdVZWl0wdbsw3QKPMsQzKMVi0c49cIa7h9qACTUG2rBjxDsyhOfD+01QufOMEAEHwUqQr8EnCBzTTQlBmlfdeCH+5/wIWfrYQacCILNMCU9lbEg869L/yN/s2Bm21LitJmoa0Jhxx+LYa/CVxoxmCQTG8ROtzqxFLHV68PHw2bKfAMTXlzkm6pvIck1z1kHt89fCfLfgyciQifaeBH17OPH1QlvqNmXqaegBNxTOhnIi37em+Cz5lh4D9wWXKJs1fI9LnfxvL6t3lNtp8e/B+U/FjGgecUZzB7e6/iGx4sN5Z6zjaD91jiZZJggIXKlq8bU2acDxnEAbHlR1fn/IIfcgjeTxHcaDCglWwLOZp1wRkEvPd7PdCEza0ssMHYiaDc0Em29/Cigr81AhNsA3CzTalv4beuGqglY2GCrc+6F4LzCLM0lhjcyxiZel5LXXAH7AWoxk9OeMH7w+w+gJPUSfAWnt1TVTDIONlGiMZ9AIf1Mu9xAjB4mWdUIwIbjF2iBYeNjpYPN9g6aGAF7zvobFwGGYfXQLTIfsTmjXu75czL1rEKTobp4LWuVYHNBPelTQfKl4util+cdvBk3Chw6rWecZ9aV5Y68HTyq1urAhuMfcYBFZxAGAz6WxG5JsF5ZX3eCm3igAm2I3Cybcb58FloawJTBh/scT7kgGvpkJMngx/tZ7LOl/Do69BWBBa5YOwkH2SWO1/MURotnPAwwAJTv7/jerSkebWjPJjwLXTP8j6cB5i/AfonpS7rOeMA0sle4FtJ3nT8D4O43J3gOwz+Q0Nf5pBMHWJknaDwGPgaukf5EE6TZcCPsg1MmXH6iIwTCMA7Oncm+IzvGfoIYSrjDmLyi1CCsZe/sLwMX1+F8jezXOazpQ7s0aCDIY3E7WaFfwTgQAPaA43DbSBTGQdeIQjc8zzklB81FP13LTy6PocCDDjbVV/LRE4ebjGnEyaonAdvQreYeTINNL4Bzbbk6aTvcXksUxnPo4wWLZl/G0okWWQLwn7+GGqmZ6Fxegk444ycpUPZM5fo3qWwn6lCtqCZHjy6xhxcAu5+z/AEgGc8J6gRHrN/rj5Lm5cU3jOEtrxn110Cno2U8Myn9Hm9pfStiLg8i/Am9imUNcksmfb0FhofZ6UWHIMlPLCcqLw00BKARYvHuKWCXcqatzHWI8Moa3l661d0zYtlPD/y/wjncMqjOIVSdvn9+EvcU4ZkYo2QFF6e2E7YZUsBKqzAVllVsIUIe1XiPFoUJ1ECQDmq9OEgzuo49wRDhwmecw0cLbYYxzzVuWVZV0GHvc5p2rVSBiBD5GBwbYUYLOdaorQEAwUsQ3rNZ46Py/VbysUxcopoJ0MJWraOyesJI3jZ+jktYnt9t+KnDq+YOjol2xMwt0xyjK0QueU6q4s5xvvVrYuvNjAzsbRf3pfTS7Dyvhy/+v4fra1pWYxQ1MYAAAAASUVORK5CYII="></image>
<ellipse id="Oval" fill="#11B5FF" cx="32" cy="32" rx="28" ry="28"></ellipse>
<path d="M32,40 C30.3153053,40 29,41.3153053 29,43 C29,44.6605881 30.3264079,46 32,46 C33.6735921,46 35,44.6605881 35,43 C35,41.3153053 33.6846947,40 32,40 Z" id="Path" fill="#FFFFFF"></path>
<path d="M32.468,16.96 C27.4238833,16.96 23.58,20.0244775 23.58,24.1702907 C23.58,26.1861804 25.003148,27.77337 27.032,27.77337 C28.9057249,27.77337 30.124,26.4889526 30.124,24.7281068 C30.124,23.0803988 29.3642533,22.3265653 27.8296148,21.9566688 C27.4706135,21.8638914 27.316,21.7167857 27.316,21.4183975 C27.316,20.1849102 29.1314221,18.7367478 31.64,18.7367478 C34.4418576,18.7367478 36.072,20.4206734 36.072,23.4265357 C36.072,25.5483621 35.3753311,26.8992916 33.4522353,29.2779172 C33.2518819,29.5253283 30,32.5 30,35 C30,35.916658 30,37 31,37.5 C32,38 32.1923697,36.5680604 32.6329793,35.0204247 C33.0706287,34.087734 34.2408493,32.7804809 37.3328167,31.0068188 C40.882884,28.675952 41.968,26.858853 41.968,23.9843519 C41.968,19.7046154 38.1785728,16.96 32.468,16.96 Z" id="Path" fill="#FFFFFF"></path>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 3.5 KiB

-15
View File
@@ -1,15 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg width="64px" height="64px" viewBox="0 0 64 64" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 41.2 (35397) - http://www.bohemiancoding.com/sketch -->
<title>dialog-warning</title>
<desc>Created with Sketch.</desc>
<defs></defs>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="dialog-warning">
<image id="Bitmap" x="1" y="2" width="62" height="62" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA+CAYAAABzwahEAAAABGdBTUEAA1teXP8meAAABQhJREFUaAXlmol2ozAMANu973v//yv3ProammEVAwWT5hVcvacaHFvWSLKhaS8vziuXhfnyvvj44qroKO+Lj9ffzjlSaznb47pU7DnGVrjccp2VeYhjru9O+OniJ5jopmqHVn0Q1ygixN+4RhEhnOt45zPG8c53ji1jVomLrpock5yvszj/8GDsT7S/Q9c6ic1HodkegTAIcbnadu84RmqkBMY5FMd+Hdpobk0I6ONQWgKKnhQAAcLOYnGOpWlGfoYFy3ixscqBrPnkMAd4twJdVZWl0wdbsw3QKPMsQzKMVi0c49cIa7h9qACTUG2rBjxDsyhOfD+01QufOMEAEHwUqQr8EnCBzTTQlBmlfdeCH+5/wIWfrYQacCILNMCU9lbEg869L/yN/s2Bm21LitJmoa0Jhxx+LYa/CVxoxmCQTG8ROtzqxFLHV68PHw2bKfAMTXlzkm6pvIck1z1kHt89fCfLfgyciQifaeBH17OPH1QlvqNmXqaegBNxTOhnIi37em+Cz5lh4D9wWXKJs1fI9LnfxvL6t3lNtp8e/B+U/FjGgecUZzB7e6/iGx4sN5Z6zjaD91jiZZJggIXKlq8bU2acDxnEAbHlR1fn/IIfcgjeTxHcaDCglWwLOZp1wRkEvPd7PdCEza0ssMHYiaDc0Em29/Cigr81AhNsA3CzTalv4beuGqglY2GCrc+6F4LzCLM0lhjcyxiZel5LXXAH7AWoxk9OeMH7w+w+gJPUSfAWnt1TVTDIONlGiMZ9AIf1Mu9xAjB4mWdUIwIbjF2iBYeNjpYPN9g6aGAF7zvobFwGGYfXQLTIfsTmjXu75czL1rEKTobp4LWuVYHNBPelTQfKl4util+cdvBk3Chw6rWecZ9aV5Y68HTyq1urAhuMfcYBFZxAGAz6WxG5JsF5ZX3eCm3igAm2I3Cybcb58FloawJTBh/scT7kgGvpkJMngx/tZ7LOl/Do69BWBBa5YOwkH2SWO1/MURotnPAwwAJTv7/jerSkebWjPJjwLXTP8j6cB5i/AfonpS7rOeMA0sle4FtJ3nT8D4O43J3gOwz+Q0Nf5pBMHWJknaDwGPgaukf5EE6TZcCPsg1MmXH6iIwTCMA7Oncm+IzvGfoIYSrjDmLyi1CCsZe/sLwMX1+F8jezXOazpQ7s0aCDIY3E7WaFfwTgQAPaA43DbSBTGQdeIQjc8zzklB81FP13LTy6PocCDDjbVV/LRE4ebjGnEyaonAdvQreYeTINNL4Bzbbk6aTvcXksUxnPo4wWLZl/G0okWWQLwn7+GGqmZ6Fxegk444ycpUPZM5fo3qWwn6lCtqCZHjy6xhxcAu5+z/AEgGc8J6gRHrN/rj5Lm5cU3jOEtrxn110Cno2U8Myn9Hm9pfStiLg8i/Am9imUNcksmfb0FhofZ6UWHIMlPLCcqLw00BKARYvHuKWCXcqatzHWI8Moa3l661d0zYtlPD/y/wjncMqjOIVSdvn9+EvcU4ZkYo2QFF6e2E7YZUsBKqzAVllVsIUIe1XiPFoUJ1ECQDmq9OEgzuo49wRDhwmecw0cLbYYxzzVuWVZV0GHvc5p2rVSBiBD5GBwbYUYLOdaorQEAwUsQ3rNZ46Py/VbysUxcopoJ0MJWraOyesJI3jZ+jktYnt9t+KnDq+YOjol2xMwt0xyjK0QueU6q4s5xvvVrYuvNjAzsbRf3pfTS7Dyvhy/+v4fra1pWYxQ1MYAAAAASUVORK5CYII="></image>
<ellipse id="Oval" fill="#F39800" cx="32" cy="32" rx="28" ry="28"></ellipse>
<path d="M32.041368,39 L32.041368,39 C30.7366037,39 29.6679395,38.0426848 29.6260007,36.8352603 L29.0015777,18.8661959 C28.9472125,17.2994188 30.3047888,16 31.9994292,16 L31.9994292,16 C33.6894097,16 35.0454327,17.2907943 34.998834,18.8532592 L34.4567354,36.823761 C34.4210097,38.0369352 33.3507923,39 32.041368,39 L32.041368,39 Z" id="Shape" fill="#FFFFFF"></path>
<ellipse id="Oval" fill="#FFFFFF" cx="32" cy="46" rx="3" ry="3"></ellipse>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 2.9 KiB

-204
View File
File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 32 KiB

-129
View File
@@ -1,129 +0,0 @@
#include "kernelinformation.h"
KernelInformation::KernelInformation()
{
}
void KernelInformation::LoadInfo()
{
QUrl url(this->url);
QUrlQuery query;
query.addQueryItem("format", "j1");
url.setQuery(query.toString(QUrl::FullyEncoded));
qDebug() << url;
QNetworkRequest request(url);
QNetworkAccessManager *m_http = new QNetworkAccessManager(this);
QNetworkReply *reply = m_http->get(request);
connect(reply, &QNetworkReply::finished, this, [this, m_http](){
QNetworkReply *reply = qobject_cast<QNetworkReply *>(sender());
QByteArray data = reply->readAll();
qDebug() << data;
qDebug() << reply->error();
this->listData = QJsonDocument::fromJson(data).array();
emit loadFinished(reply);
});
}
QJsonArray KernelInformation::get_listData() const
{
return this->listData;
}
int KernelInformation::get_count() const
{
return this->listData.count();
}
QJsonObject KernelInformation::get_kernelData(int value) const
{
return this->listData.at(value).toObject();
}
QString KernelInformation::get_name(int value) const
{
return get_kernelData(value).value("Name").toString();
}
QString KernelInformation::get_author(int value) const
{
return get_kernelData(value).value("Author").toString();
}
QString KernelInformation::get_des(int value) const
{
return get_kernelData(value).value("Des").toString().replace("\\n", "\n");
}
QString KernelInformation::get_ver(int value) const
{
return get_kernelData(value).value("Ver").toString();
}
QStringList KernelInformation::get_pkgName(int value) const
{
QJsonArray list = get_kernelData(value).value("PkgName").toArray();
int count = list.count();
QStringList result;
for(int i = 0; i < count; i++) {
result << list.at(i).toString();
}
return result;
}
QStringList KernelInformation::get_system(int value) const
{
QJsonArray list = get_kernelData(value).value("System").toArray();
int count = list.count();
QStringList result;
for(int i = 0; i < count; i++) {
result << list.at(i).toString();
}
if(!result.count()) {
result << "all";
}
return result;
}
QStringList KernelInformation::get_arch(int value) const
{
QJsonArray list = get_kernelData(value).value("Arch").toArray();
int count = list.count();
QStringList result;
for(int i = 0; i < count; i++) {
result << list.at(i).toString();
}
if(!result.count()) {
result << "all";
}
return result;
}
QString KernelInformation::localKernelName() const
{
QProcess process;
process.start("uname", QStringList() << "-r");
process.waitForStarted();
process.waitForFinished();
QString result = process.readAllStandardOutput().replace("\n", "").replace(" ", "");
process.close();
return result;
}
bool KernelInformation::get_installedAlready(int value) const
{
QString pkgName = this->get_pkgName(value).at(0);
return QFile::exists("/var/lib/dpkg/info/" + pkgName + ".list");
}
QString KernelInformation::arch() const
{
QProcess process;
process.start("dpkg", QStringList() << "--print-architecture");
process.waitForStarted();
process.waitForFinished();
QString data = process.readAllStandardOutput();
data = data.replace("\n", "").replace(" ", "");
process.close();
return data;
}
-50
View File
@@ -1,50 +0,0 @@
#ifndef KERNELINFORMATION_H
#define KERNELINFORMATION_H
#include <QString>
#include <QUrlQuery>
#include <QNetworkReply>
#include <QNetworkRequest>
#include <QNetworkAccessManager>
#include <QJsonDocument>
#include <QJsonArray>
#include <QJsonObject>
#include <QProcess>
#include <QFile>
class KernelInformation : public QObject
{
Q_OBJECT
public:
KernelInformation();
void LoadInfo();
QJsonArray get_listData() const;
QJsonObject get_kernelData(int value) const;
int get_count() const;
QString get_name(int value) const;
QString get_author(int value) const;
QString get_des(int value) const;
QString get_ver(int value) const;
QStringList get_pkgName(int value) const;
QStringList get_system(int value) const;
QStringList get_arch(int value) const;
bool get_installedAlready(int value) const;
QString localKernelName() const;
QString arch() const;
signals:
void loadFinished(QNetworkReply *reply);
private:
QString url = "http://info.kernel.gxde.gfdgdxi.top/information.json";
QJsonArray listData;
};
#endif // KERNELINFORMATION_H
-146
View File
@@ -1,146 +0,0 @@
#include "kernelinstaller.h"
#include "ui_kernelinstaller.h"
#include <ctime>
#include <cstdlib>
#include <QFile>
#include <unistd.h>
#include <QDebug>
#define MAX_TMP_NUM 1024
#define MIN_TMP_NUM 0
KernelInstaller::KernelInstaller(Option option, QStringList kernelList, QWidget *parent) :
QMainWindow(parent),
ui(new Ui::KernelInstaller)
{
ui->setupUi(this);
runOption = option;
// 修改提示文本
QString kernel = "";
foreach (QString name, kernelList) {
kernel += name + " ";
}
switch(runOption) {
case Option::Install:
ui->m_status->setText(tr("Try to install ") + kernel);
break;
case Option::Remove:
ui->m_status->setText(tr("Try to remove ") + kernel);
break;
}
this->kernelList = kernelList;
terminal = new QTermWidget(0);
terminal->setColorScheme("DarkPastels");
terminal->setAutoClose(false);
ui->verticalLayout->addWidget(terminal);
StartInstaller();
}
void KernelInstaller::StartInstaller()
{
// 随机生成目录
srand(time(0));
int randomNumber = (rand() % (MAX_TMP_NUM - MIN_TMP_NUM)) + 1; // 左闭右闭
QString tempPath = tempDir + "/gxde-kernel-manager-installer-" + QString::number(randomNumber) + ".sh";
QString tempLoaderPath = tempDir + "/gxde-kernel-manager-root-loader-installer-" + QString::number(randomNumber) + ".sh";
QFile file(tempPath);
file.open(QFile::WriteOnly);
file.write(BuildKernelInstallerBash(this->kernelList, tempPath).toUtf8());
file.close();
QFile loaderFile(tempLoaderPath);
loaderFile.open(QFile::WriteOnly);
loaderFile.write(BuildKernelRootLoaderInstallerBash(tempPath, tempLoaderPath).toUtf8());
loaderFile.close();
terminal->setShellProgram("/usr/bin/bash");
terminal->setArgs(QStringList() << tempLoaderPath);
terminal->startShellProgram();
processID = terminal->getShellPID();
// 使用 QTimer 用于判断内核是否安装完成
QTimer *runStatusTimer = new QTimer();
runStatusTimer->setInterval(100);
connect(runStatusTimer, &QTimer::timeout, this, &KernelInstaller::CheckInstallerStatusTimer);
runStatusTimer->start();
}
QString KernelInstaller::BuildKernelInstallerBash(QStringList kernelList, QString tempFilePath) const
{
// 转换数据
QString kernel = "";
foreach (QString name, kernelList) {
kernel += name + " ";
}
QString filePath = ":/shell/kernel-installer-template.sh";
switch(runOption) {
case Option::Install:
filePath = ":/shell/kernel-installer-template.sh";
break;
case Option::Remove:
filePath = ":/shell/kernel-installer-remove-template.sh";
break;
}
QFile file(filePath);
file.open(QFile::ReadOnly);
QString data = file.readAll();
data = data.replace("${KernelList}", kernel);
data = data.replace("${kernelInstallerShellTempPath}", tempFilePath);
file.close();
return data;
}
QString KernelInstaller::BuildKernelRootLoaderInstallerBash(QString tempFilePath, QString tempLoaderFilePath) const
{
QFile file(":/shell/kernel-installer-root-loader-template.sh");
file.open(QFile::ReadOnly);
QString data = file.readAll();
data = data.replace("${kernelInstallerShellTempPath}", tempFilePath);
data = data.replace("${kernelInstallerRootLoaderShellTempPath}", tempLoaderFilePath);
file.close();
return data;
}
/*
* -1 为进程正在运行(正常)
* -2 为无法读取进程信息(异常)
*/
int KernelInstaller::CheckInstallerStatus()
{
if(QFile::exists("/proc/" + QString::number(processID))) {
// 如果进程存在
return -1;
}
QFile file("/tmp/gxde-kernel-manager-installer-status");
if(!file.exists()) {
return -2;
}
file.open(QFile::ReadOnly);
QString data = file.readAll();
file.close();
data = data.replace("\n", "").replace(" ", "");
return data.toInt();
}
void KernelInstaller::CheckInstallerStatusTimer()
{
int status = CheckInstallerStatus();
if(status == -1) {
return;
}
// 安装完成
if(status == 0) {
ui->m_status->setText(tr("Done"));
ui->m_icon->setText("<img src=':/icon/dialog-ok.svg'>");
return;
}
ui->m_icon->setText("<img src=':/icon/dialog-error.svg'>");
ui->m_status->setText(tr("Something error, exit code: ") + QString::number(status));
}
KernelInstaller::~KernelInstaller()
{
delete ui;
}
-46
View File
@@ -1,46 +0,0 @@
#ifndef KERNELINSTALLER_H
#define KERNELINSTALLER_H
#include <QMainWindow>
#include <qtermwidget5/qtermwidget.h>
namespace Ui {
class KernelInstaller;
}
class KernelInstaller : public QMainWindow
{
Q_OBJECT
public:
enum Option {
Install,
Remove
};
explicit KernelInstaller(Option option, QStringList kernelList, QWidget *parent = nullptr);
~KernelInstaller();
signals:
void InstallFinished(int status);
private:
Option runOption;
Ui::KernelInstaller *ui;
QTermWidget *terminal;
QStringList kernelList;
int processID;
QString tempDir = "/tmp";
void StartInstaller();
QString BuildKernelInstallerBash(QStringList kernelList, QString tempFilePath) const;
QString BuildKernelRootLoaderInstallerBash(QString tempFilePath, QString tempLoaderFilePath) const;
int CheckInstallerStatus();
void CheckInstallerStatusTimer();
};
#endif // KERNELINSTALLER_H
-59
View File
@@ -1,59 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>KernelInstaller</class>
<widget class="QMainWindow" name="KernelInstaller">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>600</height>
</rect>
</property>
<property name="windowTitle">
<string>Config Kernel</string>
</property>
<property name="windowIcon">
<iconset resource="Resource.qrc">
<normaloff>:/icon/icon.svg</normaloff>:/icon/icon.svg</iconset>
</property>
<widget class="QWidget" name="centralwidget">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QLabel" name="m_icon">
<property name="sizePolicy">
<sizepolicy hsizetype="Fixed" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string/>
</property>
</widget>
</item>
<item>
<widget class="QLabel" name="m_status">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="text">
<string>TextLabel</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
</widget>
<resources>
<include location="Resource.qrc"/>
</resources>
<connections/>
</ui>
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
-35
View File
@@ -1,35 +0,0 @@
#include "mainwindow.h"
#include <QApplication>
#include <QFile>
#include <QDir>
#include <QMessageBox>
#include <QObject>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QTranslator translator;
// 检查系统语言以加载翻译
if(QProcessEnvironment::systemEnvironment().value("LANG").contains("zh")) {
// 中文,加载中文翻译
translator.load(":/translation/gxde-kernel-manager_zh_CN.qm");
}
a.installTranslator(&translator);
#ifdef __linux__
// 风险提示
if(!QFile::exists(QDir::homePath() + "/.config/gxde-kernel-manager/read_already")) {
QMessageBox::warning(NULL, QObject::tr("Waring"), QObject::tr("It is danger because it may make your system unboot.\nPress 'OK' to countinue"));
}
MainWindow w;
w.show();
return a.exec();
#else
// 其它系统不支持该工具
QMessageBox::critical(NULL, QObject::tr("Error"), QObject::tr("It unsupport Windows"));
return a.exec();
#endif
}
-116
View File
@@ -1,116 +0,0 @@
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "aboutwindow.h"
#include "kernelinformation.h"
#include <QStandardItemModel>
#include <qdesktopservices.h>
MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
, ui(new Ui::MainWindow)
{
ui->setupUi(this);
kernelInformation = new KernelInformation();
RefreshKernelList();
}
void MainWindow::RefreshKernelList()
{
ui->m_nowKernel->setText(tr("Kernel: ") + kernelInformation->localKernelName() + " " + tr("Arch: ") + kernelInformation->arch());
connect(kernelInformation, &KernelInformation::loadFinished, this, [this](){
qDebug() << this->kernelInformation->get_listData();
RefreshKernelListView(kernelInformation);
});
kernelInformation->LoadInfo();
}
void MainWindow::RefreshKernelListView(KernelInformation *info)
{
// 更新列表
int count = info->get_count();
QStandardItemModel *model = new QStandardItemModel();
model->setHorizontalHeaderLabels(QStringList() << tr("ID") << tr("Kernel Name") << tr("Author") << tr("Arch") << tr("Installed"));
for(int i = 0; i < count; i++) {
model->setItem(i, 0, new QStandardItem(QString::number(i)));
model->setItem(i, 1, new QStandardItem(info->get_name(i)));
model->setItem(i, 2, new QStandardItem(info->get_author(i)));
model->setItem(i, 3, new QStandardItem(info->get_arch(i).at(0)));
model->setItem(i, 4, new QStandardItem((QStringList() << "" << "Y").at(info->get_installedAlready(i))));
}
ui->m_kernelShow->setModel(model);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_m_refreshButton_clicked()
{
RefreshKernelList();
}
void MainWindow::on_m_installButton_clicked()
{
QModelIndex list = ui->m_kernelShow->selectionModel()->currentIndex();
int row = list.row();
if(row <= 0) {
// 未选中任何内容
QMessageBox::critical(this, tr("Error"), tr("Nothing to choose"));
return;
}
// 获取 ID
QModelIndex index = ui->m_kernelShow->model()->index(row, 0);
int id = ui->m_kernelShow->model()->data(index).toUInt();
// 获取选中行
KernelInstaller *installer = new KernelInstaller(KernelInstaller::Option::Install, kernelInformation->get_pkgName(id));
installer->show();
}
void MainWindow::on_actionExit_triggered()
{
this->close();
}
void MainWindow::on_actionAbout_triggered()
{
AboutWindow *aboutWindow = new AboutWindow();
aboutWindow->show();
}
void MainWindow::on_actionGitee_triggered()
{
QDesktopServices::openUrl(QUrl("https://gitee.com/GXDE-OS/gxde-kernel-manager"));
}
void MainWindow::on_actionGithub_triggered()
{
QDesktopServices::openUrl(QUrl("https://github.com/GXDE-OS/gxde-kernel-manager"));
}
void MainWindow::on_m_removeButton_clicked()
{
QModelIndex list = ui->m_kernelShow->selectionModel()->currentIndex();
int row = list.row();
if(row <= 0) {
// 未选中任何内容
QMessageBox::critical(this, tr("Error"), tr("Nothing to choose"));
return;
}
// 获取 ID
QModelIndex index = ui->m_kernelShow->model()->index(row, 0);
int id = ui->m_kernelShow->model()->data(index).toUInt();
// 获取选中行
KernelInstaller *installer = new KernelInstaller(KernelInstaller::Option::Remove, kernelInformation->get_pkgName(id));
installer->show();
}
-42
View File
@@ -1,42 +0,0 @@
#ifndef MAINWINDOW_H
#define MAINWINDOW_H
#include <QMainWindow>
#include <QMessageBox>
#include "kernelinformation.h"
#include "kernelinstaller.h"
QT_BEGIN_NAMESPACE
namespace Ui { class MainWindow; }
QT_END_NAMESPACE
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow(QWidget *parent = nullptr);
~MainWindow();
private slots:
void on_m_refreshButton_clicked();
void on_m_installButton_clicked();
void on_actionExit_triggered();
void on_actionAbout_triggered();
void on_actionGitee_triggered();
void on_actionGithub_triggered();
void on_m_removeButton_clicked();
private:
Ui::MainWindow *ui;
KernelInformation *kernelInformation;
void RefreshKernelList();
void RefreshKernelListView(KernelInformation *info);
};
#endif // MAINWINDOW_H
-138
View File
@@ -1,138 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
<class>MainWindow</class>
<widget class="QMainWindow" name="MainWindow">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>600</height>
</rect>
</property>
<property name="windowTitle">
<string>GXDE Kerne Manager</string>
</property>
<property name="windowIcon">
<iconset resource="Resource.qrc">
<normaloff>:/icon/icon.svg</normaloff>:/icon/icon.svg</iconset>
</property>
<widget class="QWidget" name="centralwidget">
<layout class="QVBoxLayout" name="verticalLayout">
<item>
<widget class="QTableView" name="m_kernelShow">
<property name="editTriggers">
<set>QAbstractItemView::NoEditTriggers</set>
</property>
<property name="selectionBehavior">
<enum>QAbstractItemView::SelectRows</enum>
</property>
<property name="wordWrap">
<bool>true</bool>
</property>
<attribute name="verticalHeaderVisible">
<bool>false</bool>
</attribute>
</widget>
</item>
<item>
<layout class="QHBoxLayout" name="horizontalLayout">
<item>
<widget class="QLabel" name="m_nowKernel">
<property name="text">
<string>TextLabel</string>
</property>
</widget>
</item>
<item>
<spacer name="horizontalSpacer">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint" stdset="0">
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item>
<widget class="QPushButton" name="m_refreshButton">
<property name="text">
<string>Refresh</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="m_installButton">
<property name="text">
<string>Install</string>
</property>
</widget>
</item>
<item>
<widget class="QPushButton" name="m_removeButton">
<property name="text">
<string>Remove</string>
</property>
</widget>
</item>
</layout>
</item>
</layout>
</widget>
<widget class="QMenuBar" name="menubar">
<property name="geometry">
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>23</height>
</rect>
</property>
<widget class="QMenu" name="menuProgram">
<property name="title">
<string>Program</string>
</property>
<addaction name="actionExit"/>
</widget>
<widget class="QMenu" name="menuHelp">
<property name="title">
<string>Help</string>
</property>
<addaction name="actionGitee"/>
<addaction name="actionGithub"/>
<addaction name="separator"/>
<addaction name="actionAbout"/>
</widget>
<addaction name="menuProgram"/>
<addaction name="menuHelp"/>
</widget>
<widget class="QStatusBar" name="statusbar"/>
<action name="actionExit">
<property name="text">
<string>Exit</string>
</property>
</action>
<action name="actionAbout">
<property name="text">
<string>About</string>
</property>
</action>
<action name="actionGitee">
<property name="text">
<string>Gitee</string>
</property>
</action>
<action name="actionGithub">
<property name="text">
<string>Github</string>
</property>
</action>
</widget>
<resources>
<include location="Resource.qrc"/>
</resources>
<connections/>
</ui>
+7
View File
@@ -0,0 +1,7 @@
#!/usr/bin/env bash
# reduce ACPI_MAX_LOOP_TIMEOUT value
sed -i "/ACPI_MAX_LOOP_TIMEOUT/s/30/3/g" include/acpi/acconfig.h
# make kernel version to 5.xx.0
sed -i '/SUBLEVEL =/s/[0-9].*/0/g' Makefile
@@ -1,5 +0,0 @@
#!/bin/bash
set -e
rm /tmp/gxde-kernel-manager-installer-status -f
apt purge ${KernelList} -y
rm -f "${kernelInstallerShellTempPath}"
@@ -1,5 +0,0 @@
#!/bin/bash
rm /tmp/gxde-kernel-manager-installer-status -f
pkexec bash "${kernelInstallerShellTempPath}"
echo $? > /tmp/gxde-kernel-manager-installer-status
rm -f "${kernelInstallerRootLoaderShellTempPath}"
-6
View File
@@ -1,6 +0,0 @@
#!/bin/bash
set -e
rm /tmp/gxde-kernel-manager-installer-status -f
apt update
apt install ${KernelList} -y
rm -f "${kernelInstallerShellTempPath}"
-209
View File
@@ -1,209 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE TS>
<TS version="2.1" language="zh_CN">
<context>
<name>AboutWindow</name>
<message>
<location filename="../aboutwindow.ui" line="14"/>
<source>About</source>
<translation></translation>
</message>
<message>
<location filename="../aboutwindow.ui" line="25"/>
<source>&lt;html&gt;&lt;head/&gt;&lt;body&gt;&lt;p&gt;&lt;img width=128 src=&quot;:/icon/icon.svg&quot;/&gt;&lt;/p&gt;&lt;/body&gt;&lt;/html&gt;</source>
<translation type="unfinished"></translation>
</message>
<message>
<location filename="../aboutwindow.ui" line="62"/>
<source>OK</source>
<translation></translation>
</message>
<message>
<location filename="../aboutwindow.cpp" line="13"/>
<source>A kernel manager allows users to install or remove kernels easily.</source>
<translation>GXDE 便</translation>
</message>
<message>
<location filename="../aboutwindow.cpp" line="14"/>
<source>Warning: You may damage your system unless you know what you will do!</source>
<translation></translation>
</message>
<message>
<location filename="../aboutwindow.cpp" line="17"/>
<source>Website</source>
<translation></translation>
</message>
</context>
<context>
<name>KernelInstaller</name>
<message>
<source>Kernel Installer</source>
<translation type="vanished"></translation>
</message>
<message>
<location filename="../kernelinstaller.ui" line="14"/>
<source>Config Kernel</source>
<translation></translation>
</message>
<message>
<location filename="../kernelinstaller.ui" line="33"/>
<location filename="../kernelinstaller.ui" line="46"/>
<source>TextLabel</source>
<translation></translation>
</message>
<message>
<location filename="../kernelinstaller.cpp" line="27"/>
<source>Try to install </source>
<translation> </translation>
</message>
<message>
<location filename="../kernelinstaller.cpp" line="30"/>
<source>Try to remove </source>
<translation> </translation>
</message>
<message>
<location filename="../kernelinstaller.cpp" line="135"/>
<source>Done</source>
<translation></translation>
</message>
<message>
<location filename="../kernelinstaller.cpp" line="140"/>
<source>Something error, exit code: </source>
<translation>退 </translation>
</message>
</context>
<context>
<name>MainWindow</name>
<message>
<source>Kerne Manager</source>
<translation type="vanished">GXDE </translation>
</message>
<message>
<location filename="../mainwindow.ui" line="14"/>
<source>GXDE Kerne Manager</source>
<translation>GXDE </translation>
</message>
<message>
<location filename="../mainwindow.ui" line="43"/>
<source>TextLabel</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.ui" line="63"/>
<source>Refresh</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.ui" line="70"/>
<source>Install</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.ui" line="77"/>
<source>Remove</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.ui" line="96"/>
<source>Program</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.ui" line="102"/>
<source>Help</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.ui" line="115"/>
<source>Exit</source>
<translation>退</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="120"/>
<source>About</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.ui" line="125"/>
<source>Gitee</source>
<translation>Gitee</translation>
</message>
<message>
<location filename="../mainwindow.ui" line="130"/>
<source>Github</source>
<translation>Github</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="21"/>
<source>Kernel: </source>
<translation> </translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="21"/>
<source>Arch: </source>
<translation> </translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="34"/>
<source>ID</source>
<translation>ID</translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="34"/>
<source>Kernel Name</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="34"/>
<source>Author</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="34"/>
<source>Arch</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="34"/>
<source>Installed</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="63"/>
<location filename="../mainwindow.cpp" line="106"/>
<source>Error</source>
<translation></translation>
</message>
<message>
<location filename="../mainwindow.cpp" line="63"/>
<location filename="../mainwindow.cpp" line="106"/>
<source>Nothing to choose</source>
<translation></translation>
</message>
</context>
<context>
<name>QObject</name>
<message>
<location filename="../main.cpp" line="23"/>
<source>Waring</source>
<translation></translation>
</message>
<message>
<location filename="../main.cpp" line="23"/>
<source>It is danger because it may make your system unboot.
Press &apos;OK&apos; to countinue</source>
<translation>
OK</translation>
</message>
<message>
<location filename="../main.cpp" line="30"/>
<source>Error</source>
<translation></translation>
</message>
<message>
<location filename="../main.cpp" line="30"/>
<source>It unsupport Windows</source>
<translation> Windows</translation>
</message>
</context>
</TS>