From ed5e66b04a54095d5ddf4aabe56206fc12725359 Mon Sep 17 00:00:00 2001 From: Aoran Zeng Date: Fri, 16 Aug 2024 02:48:26 +0800 Subject: [PATCH] Split deepin out --- include/source.h | 39 +--------------- src/chsrc.c | 77 ++++++------------------------- src/recipe/catalog.c | 1 - src/recipe/os/apt-family/deepin.c | 57 +++++++++++++++++++++++ src/recipe/os/apt-family/kali.c | 59 +++++++++++++++++++++++ 5 files changed, 131 insertions(+), 102 deletions(-) create mode 100644 src/recipe/os/apt-family/deepin.c create mode 100644 src/recipe/os/apt-family/kali.c diff --git a/include/source.h b/include/source.h index 90dd36a..641284a 100644 --- a/include/source.h +++ b/include/source.h @@ -153,28 +153,11 @@ pl_dotnet_sources[] = { -/** - * @time 2023-09-06 更新 - * @note 源并不完整,且未经测试是否有效 - */ -static SourceInfo -os_deepin_sources[] = { - {&Upstream, NULL}, - {&Ali, "https://mirrors.aliyun.com/deepin"}, - {&Bfsu, "https://mirrors.bfsu.edu.cn/deepin"}, - {&Ustc, "https://mirrors.ustc.edu.cn/deepin"}, - {&Tuna, "https://mirrors.tuna.tsinghua.edu.cn/deepin"}, - {&Tencent, "https://mirrors.tencent.com/deepin"}, - {&Netease, "https://mirrors.163.com/deepin"}, - {&Sohu, "https://mirrors.sohu.com/deepin"} -}, - - - /** * @time 2023-09-02 更新 * @note 源并不完整,且未经测试是否有效 */ +static SourceInfo os_fedora_sources[] = { {&Upstream, NULL}, {&Ali, "https://mirrors.aliyun.com/fedora"}, @@ -187,23 +170,6 @@ os_fedora_sources[] = { }, -/** - * @time 2024-06-12 更新 - */ -os_kali_sources[] = { - {&Upstream, NULL}, - {&Ali, "https://mirrors.aliyun.com/kali"}, - {&Volcengine, "https://mirrors.volces.com/kali"}, - {&Bfsu, "https://mirrors.bfsu.edu.cn/kali"}, - {&Ustc, "https://mirrors.ustc.edu.cn/kali"}, - {&Tuna, "https://mirrors.tuna.tsinghua.edu.cn/kali"}, - {&Tencent, "https://mirrors.tencent.com/kali"}, - {&Huawei, "https://mirrors.huaweicloud.com/kali"}, - {&Netease, "https://mirrors.163.com/kali"}, - {&Sohu, "https://mirrors.sohu.com/kali"} -}, - - /** * @time 2024-04-18 更新 @@ -412,13 +378,12 @@ def_sources_n(pl_clojure); def_sources_n(pl_dotnet); def_sources_n(os_fedora); -def_sources_n(os_kali); def_sources_n(os_msys2); def_sources_n(os_rocky); def_sources_n(os_alma); def_sources_n(os_linuxlite); -def_sources_n(os_deepin); def_sources_n(os_openeuler); def_sources_n(os_openkylin); +def_sources_n(os_openeuler); def_sources_n(os_openkylin); def_sources_n(os_anolis); def_sources_n(wr_winget); diff --git a/src/chsrc.c b/src/chsrc.c index d2ba274..0018785 100644 --- a/src/chsrc.c +++ b/src/chsrc.c @@ -69,46 +69,25 @@ pl_clojure_setsrc (char *option) #include "recipe/lang/r.c" #include "recipe/lang/julia.c" + + + #include "recipe/os/apt-family/common.h" #include "recipe/os/apt-family/debian.c" #include "recipe/os/apt-family/ubuntu.c" -#include "recipe/os/apt-family/linuxmint.c" -#include "recipe/os/apt-family/trisquel.c" + +// Debian-based #include "recipe/os/apt-family/armbian.c" #include "recipe/os/apt-family/raspberrypi.c" +#include "recipe/os/apt-family/kali.c" + +// Ubuntu-based +#include "recipe/os/apt-family/linuxmint.c" +#include "recipe/os/apt-family/trisquel.c" + +// Independent #include "recipe/os/apt-family/ros.c" - - - -void -os_deepin_getsrc(char *option) -{ - chsrc_view_file (OS_Apt_SourceList); -} - -/** - * HELP: 未经测试 - */ -void -os_deepin_setsrc (char *option) -{ - chsrc_ensure_root(); - - SourceInfo source; - chsrc_yield_source (os_deepin); - chsrc_confirm_source (&source); - - chsrc_backup (OS_Apt_SourceList); - - char *cmd = xy_strjoin (3, "sed -E -i \'s@https?://.*/deepin/?@", - source.url, - "@g\' /etc/apt/sources.list"); - - chsrc_run (cmd, RunOpt_Default); - chsrc_run ("apt update", RunOpt_No_Last_New_Line); - chsrc_say_lastly (&source, ChsrcTypeUntested); -} - +#include "recipe/os/apt-family/deepin.c" /** @@ -152,36 +131,6 @@ os_fedora_setsrc (char *option) #include "recipe/os/opensuse.c" -void -os_kali_getsrc (char *option) -{ - chsrc_view_file (OS_Apt_SourceList); -} - -/** - * HELP: 未经测试 - */ -void -os_kali_setsrc (char *option) -{ - chsrc_ensure_root (); - - SourceInfo source; - chsrc_yield_source (os_kali); - chsrc_confirm_source (&source); - - chsrc_backup (OS_Apt_SourceList); - - char *cmd = xy_strjoin (3, "sed -E -i \'s@https?://.*/kali/?@", - source.url, - "@g\' /etc/apt/sources.list"); - - chsrc_run (cmd, RunOpt_Default); - chsrc_run ("apt update", RunOpt_No_Last_New_Line); - chsrc_say_lastly (&source, ChsrcTypeUntested); -} - - /** * HELP: 未经测试 diff --git a/src/recipe/catalog.c b/src/recipe/catalog.c index 8489ec1..1c42b7a 100644 --- a/src/recipe/catalog.c +++ b/src/recipe/catalog.c @@ -39,7 +39,6 @@ static const char }; -def_target(os_kali); def_target(os_linuxlite); def_target(os_deepin); def_target(os_openkylin); def_target_noget(os_fedora); diff --git a/src/recipe/os/apt-family/deepin.c b/src/recipe/os/apt-family/deepin.c new file mode 100644 index 0000000..dddc965 --- /dev/null +++ b/src/recipe/os/apt-family/deepin.c @@ -0,0 +1,57 @@ +/** ------------------------------------------------------------ + * SPDX-License-Identifier: GPL-3.0-or-later + * ------------------------------------------------------------- + * File Authors : Heng Guo <2085471348@qq.com> + * Contributors : Nil Null + * Created On : <2023-09-26> + * Last Modified : <2024-08-16> + * + * Kali Linux 基于 Debian Testing branch + * ------------------------------------------------------------*/ + +/** + * @time 2023-09-06 更新 + * @note 源并不完整,且未经测试是否有效 + */ +static SourceInfo +os_deepin_sources[] = { + {&Upstream, NULL}, + {&Ali, "https://mirrors.aliyun.com/deepin"}, + {&Bfsu, "https://mirrors.bfsu.edu.cn/deepin"}, + {&Ustc, "https://mirrors.ustc.edu.cn/deepin"}, + {&Tuna, "https://mirrors.tuna.tsinghua.edu.cn/deepin"}, + {&Tencent, "https://mirrors.tencent.com/deepin"}, + {&Netease, "https://mirrors.163.com/deepin"}, + {&Sohu, "https://mirrors.sohu.com/deepin"} +}; +def_sources_n(os_deepin); + + +void +os_deepin_getsrc(char *option) +{ + chsrc_view_file (OS_Apt_SourceList); +} + +/** + * HELP: 未经测试 + */ +void +os_deepin_setsrc (char *option) +{ + chsrc_ensure_root(); + + SourceInfo source; + chsrc_yield_source (os_deepin); + chsrc_confirm_source (&source); + + chsrc_backup (OS_Apt_SourceList); + + char *cmd = xy_strjoin (3, "sed -E -i \'s@https?://.*/deepin/?@", + source.url, + "@g\' " OS_Apt_SourceList); + + chsrc_run (cmd, RunOpt_Default); + chsrc_run ("apt update", RunOpt_No_Last_New_Line); + chsrc_say_lastly (&source, ChsrcTypeUntested); +} diff --git a/src/recipe/os/apt-family/kali.c b/src/recipe/os/apt-family/kali.c new file mode 100644 index 0000000..a3b466c --- /dev/null +++ b/src/recipe/os/apt-family/kali.c @@ -0,0 +1,59 @@ +/** ------------------------------------------------------------ + * SPDX-License-Identifier: GPL-3.0-or-later + * ------------------------------------------------------------- + * File Authors : Heng Guo <2085471348@qq.com> + * Contributors : Nil Null + * Created On : <2023-09-29> + * Last Modified : <2024-08-16> + * + * Kali Linux 基于 Debian Testing branch + * ------------------------------------------------------------*/ + +/** + * @time 2024-06-12 更新 + */ +static SourceInfo +os_kali_sources[] = { + {&Upstream, NULL}, + {&Ali, "https://mirrors.aliyun.com/kali"}, + {&Volcengine, "https://mirrors.volces.com/kali"}, + {&Bfsu, "https://mirrors.bfsu.edu.cn/kali"}, + {&Ustc, "https://mirrors.ustc.edu.cn/kali"}, + {&Tuna, "https://mirrors.tuna.tsinghua.edu.cn/kali"}, + {&Tencent, "https://mirrors.tencent.com/kali"}, + {&Huawei, "https://mirrors.huaweicloud.com/kali"}, + {&Netease, "https://mirrors.163.com/kali"}, + {&Sohu, "https://mirrors.sohu.com/kali"} +}; +def_sources_n(os_kali); + +void +os_kali_getsrc (char *option) +{ + chsrc_view_file (OS_Apt_SourceList); +} + +/** + * HELP: 未经测试 + */ +void +os_kali_setsrc (char *option) +{ + chsrc_ensure_root (); + + SourceInfo source; + chsrc_yield_source (os_kali); + chsrc_confirm_source (&source); + + chsrc_backup (OS_Apt_SourceList); + + char *cmd = xy_strjoin (3, "sed -E -i \'s@https?://.*/kali/?@", + source.url, + "@g\' " OS_Apt_SourceList); + + chsrc_run (cmd, RunOpt_Default); + chsrc_run ("apt update", RunOpt_No_Last_New_Line); + chsrc_say_lastly (&source, ChsrcTypeUntested); +} + +def_target(os_kali);