Update WinGet

This commit is contained in:
Aoran Zeng 2025-08-09 21:46:44 +08:00
parent 2d358fbc6a
commit 35ef3a4c37
No known key found for this signature in database
GPG Key ID: 8F8BA8488E10ED98
3 changed files with 56 additions and 60 deletions

View File

@ -55,13 +55,12 @@ typedef SourceProvider_t MirrorSite_t;
SourceProvider_t UpstreamProvider =
{
IS_UpstreamProvider,
/* 引入新的上游默认源时,请使下面第一行的前三个字段保持不变,只添加第四个字段,可使用 def_upstream 宏 */
/* 引入新的上游默认源时,请使下面第一行的前三个字段保持不变,只添加第四个字段 */
"upstream", "Upstream", "上游默认源", NULL,
/* 引入新的上游默认源时,请完全修改下面这个结构体,可使用 def_need_measure_info 宏 */
{SKIP, "URL未知邀您参与贡献!", "URL unknown, welcome to contribute!", NULL, ACCURATE}
};
#define def_upstream IS_UpstreamProvider, "upstream", "Upstream", "上游默认源"
#define def_need_measure_info {SKIP, "缺乏较大的测速对象,邀您参与贡献!", "Lack of large object URL, welcome to contribute!", NULL, ACCURATE}
SourceProvider_t UserDefinedProvider =
@ -180,29 +179,29 @@ typedef struct TargetRegisterInfo_t
TargetRegisterInfo_t;
#define def_target_inner_s(t) NULL, t##_setsrc, NULL, NULL
#define def_target_inner_sr(t) NULL, t##_setsrc, t##_resetsrc, NULL
#define def_target_inner_sf(t) NULL, t##_setsrc, NULL, t##_feat
#define def_target_inner_srf(t) NULL, t##_setsrc, t##_resetsrc, t##_feat
#define def_target_inner_gs(t) t##_getsrc, t##_setsrc, NULL, NULL
#define def_target_inner_gsr(t) t##_getsrc, t##_setsrc, t##_resetsrc, NULL
#define def_target_inner_gsf(t) t##_getsrc, t##_setsrc, NULL, t##_feat
#define def_target_inner_gsrf(t) t##_getsrc, t##_setsrc, t##_resetsrc, t##_feat
// #define def_target_inner_s(t) NULL, t##_setsrc, NULL, NULL
// #define def_target_inner_sr(t) NULL, t##_setsrc, t##_resetsrc, NULL
// #define def_target_inner_sf(t) NULL, t##_setsrc, NULL, t##_feat
// #define def_target_inner_srf(t) NULL, t##_setsrc, t##_resetsrc, t##_feat
// #define def_target_inner_gs(t) t##_getsrc, t##_setsrc, NULL, NULL
// #define def_target_inner_gsr(t) t##_getsrc, t##_setsrc, t##_resetsrc, NULL
// #define def_target_inner_gsf(t) t##_getsrc, t##_setsrc, NULL, t##_feat
// #define def_target_inner_gsrf(t) t##_getsrc, t##_setsrc, t##_resetsrc, t##_feat
#define def_target_sourcesn(t) t##_sources, t##_sources_n
/* 大部分target还不支持reset所以暂时先默认设置为NULL来过渡 */
#define def_target(t) Target_t t##_target = {def_target_inner_gs(t),def_target_sourcesn(t)}
#define def_target_s(t) Target_t t##_target = {def_target_inner_s(t),def_target_sourcesn(t)}
#define def_target_sr(t) Target_t t##_target = {def_target_inner_sr(t),def_target_sourcesn(t)}
#define def_target_sf(t) Target_t t##_target = {def_target_inner_sf(t),def_target_sourcesn(t)}
#define def_target_srf(t) Target_t t##_target = {def_target_inner_srf(t),def_target_sourcesn(t)}
#define def_target_gs(t) Target_t t##_target = {def_target_inner_gs(t),def_target_sourcesn(t)}
#define def_target_gsr(t) Target_t t##_target = {def_target_inner_gsr(t),def_target_sourcesn(t)}
#define def_target_gsf(t) Target_t t##_target = {def_target_inner_gsf(t),def_target_sourcesn(t)}
#define def_target_gsrf(t) Target_t t##_target = {def_target_inner_gsrf(t),def_target_sourcesn(t)}
// #define def_target(t) Target_t t##_target = {def_target_inner_gs(t),def_target_sourcesn(t)}
// #define def_target_s(t) Target_t t##_target = {def_target_inner_s(t),def_target_sourcesn(t)}
// #define def_target_sr(t) Target_t t##_target = {def_target_inner_sr(t),def_target_sourcesn(t)}
// #define def_target_sf(t) Target_t t##_target = {def_target_inner_sf(t),def_target_sourcesn(t)}
// #define def_target_srf(t) Target_t t##_target = {def_target_inner_srf(t),def_target_sourcesn(t)}
// #define def_target_gs(t) Target_t t##_target = {def_target_inner_gs(t),def_target_sourcesn(t)}
// #define def_target_gsr(t) Target_t t##_target = {def_target_inner_gsr(t),def_target_sourcesn(t)}
// #define def_target_gsf(t) Target_t t##_target = {def_target_inner_gsf(t),def_target_sourcesn(t)}
// #define def_target_gsrf(t) Target_t t##_target = {def_target_inner_gsrf(t),def_target_sourcesn(t)}
#define define_target(t) void t##_getsrc(char *option);void t##_setsrc(char *option);void t##_resetsrc(char *option); Target_t t##_target={0};
#define def_target(t) void t##_getsrc(char *option);void t##_setsrc(char *option);void t##_resetsrc(char *option); Target_t t##_target={0};
/* 以下宏仅能放在 prelude() 中使用 */
#define use_this(t) Target_t *this = &t##_target;
@ -210,4 +209,4 @@ TargetRegisterInfo_t;
#define def_sources_begin() Source_t sources[] = {
#define def_sources_end() }; this->sources = sources; this->sources_n = xy_arylen(sources);
#define def_upstream_provider(url) SourceProvider_t upstream = UpstreamProvider; upstream.site = url;
#define def_upstream(url) SourceProvider_t upstream = UpstreamProvider; upstream.site = url;

View File

@ -2,7 +2,7 @@
* SPDX-License-Identifier: GPL-3.0-or-later
* ------------------------------------------------------------*/
define_target(wr_flathub);
def_target(wr_flathub);
void
wr_flathub_prelude ()
@ -11,7 +11,7 @@ wr_flathub_prelude ()
chef_set_created_on (this, "2023-09-11");
chef_set_last_updated (this, "2025-08-09");
chef_set_sources_last_updated (this, "2025-05-27");
chef_set_authors (this, 1, "Aoran Zeng", "ccmywish@qq.com");
chef_set_chef (this, NULL, NULL);
@ -31,8 +31,8 @@ wr_flathub_prelude ()
chef_set_sources_last_updated (this, "2025-05-27");
def_upstream_provider("https://flathub.org/repo");
def_upstream("https://flathub.org/repo");
def_sources_begin()
{&upstream, "https://flathub.org/repo", DelegateToUpstream},

View File

@ -1,25 +1,38 @@
/** ------------------------------------------------------------
* SPDX-License-Identifier: GPL-3.0-or-later
* -------------------------------------------------------------
* File Authors : Aoran Zeng <ccmywish@qq.com>
* Contributors : Nil Null <nil@null.org>
* Created On : <2024-06-07>
* Last Modified : <2025-07-13>
* ------------------------------------------------------------*/
/**
* @update 2025-07-13
*/
static Source_t wr_winget_sources[] =
def_target(wr_winget);
void
wr_winget_prelude ()
{
{&UpstreamProvider, "https://cdn.winget.microsoft.com/cache", NULL},
{&MirrorZ, "https://mirrors.cernet.edu.cn/winget-source", NULL},
{&Ustc, "https://mirrors.ustc.edu.cn/winget-source", NULL},
{&Nju, "https://mirror.nju.edu.cn/winget-source", NULL},
{&Nyist, "https://mirror.nyist.edu.cn/winget-source", NULL},
{&Xjtu, "https://mirrors.xjtu.edu.cn/winget-source", NULL}
};
def_sources_n(wr_winget);
use_this(wr_winget);
chef_set_created_on (this, "2024-06-07");
chef_set_last_updated (this, "2025-07-13");
chef_set_sources_last_updated (this, "2025-07-13");
chef_set_authors (this, 1, "Aoran Zeng", "ccmywish@qq.com");
chef_set_chef (this, NULL, NULL);
chef_set_sous_chefs (this, 0);
chef_set_contributors (this, 0);
this.can_english = false;
this.can_user_define = true;
def_upstream("https://github.com/microsoft/winget-cli/");
def_sources_begin()
{&upstream, "https://cdn.winget.microsoft.com/cache", NULL},
{&MirrorZ, "https://mirrors.cernet.edu.cn/winget-source", NULL},
{&Ustc, "https://mirrors.ustc.edu.cn/winget-source", NULL},
{&Nju, "https://mirror.nju.edu.cn/winget-source", NULL},
{&Nyist, "https://mirror.nyist.edu.cn/winget-source", NULL},
{&Xjtu, "https://mirrors.xjtu.edu.cn/winget-source", NULL}
def_sources_end()
}
void
@ -35,7 +48,8 @@ wr_winget_getsrc (char *option)
void
wr_winget_setsrc (char *option)
{
chsrc_yield_source_and_confirm (wr_winget);
use_this(wr_winget);
Source_t source = chsrc_yield_source_and_confirm (this, option);
chsrc_run ("winget source remove winget", RunOpt_Default);
chsrc_run (xy_strjoin (3, "winget source add winget ", source.url, " --trust-level trusted"), RunOpt_Default);
@ -53,20 +67,3 @@ wr_winget_resetsrc (char *option)
chsrc_determine_chgtype (ChgType_Reset);
chsrc_conclude (NULL);
}
Feature_t
wr_winget_feat (char *option)
{
Feature_t f = {0};
f.can_get = true;
f.can_reset = true;
f.can_english = false;
f.can_user_define = true;
return f;
}
def_target_gsrf(wr_winget);