chsrc/src/recipe/os/APT/Trisquel.c
2025-08-10 18:55:52 +08:00

78 lines
2.1 KiB
C
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/** ------------------------------------------------------------
* SPDX-License-Identifier: GPL-3.0-or-later
* -------------------------------------------------------------
* Trisquel基于Ubuntu开发不含任何专有软件及专有固件内核使用 Linux-libre
* ------------------------------------------------------------*/
def_target(os_trisquel);
void
os_trisquel_prelude ()
{
use_this(os_trisquel);
chef_set_created_on (this, "2023-09-29");
chef_set_last_updated (this, "2025-08-10");
chef_set_sources_last_updated (this, "2024-11-21");
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);
chef_allow_get();
chef_allow_set();
chef_allow_reset();
chef_allow_local_mode (this, CanNot, NULL, NULL);
chef_forbid_english(this);
chef_forbid_user_define(this);
chef_set_note(this, NULL, NULL);
def_sources_begin()
{&upstream, "http://archive.trisquel.info/trisquel/", DelegateToUpstream},
{&MirrorZ, "https://mirrors.cernet.edu.cn/trisquel/", DelegateToMirror},
{&Ali, "https://mirrors.aliyun.com/trisquel/", DelegateToMirror},
{&Nju, "https://mirror.nju.edu.cn/trisquel/", DelegateToMirror},
{&Ustc, "https://mirrors.ustc.edu.cn/trisquel/", DelegateToMirror},
{&Iscas, "https://mirror.iscas.ac.cn/trisquel/", DelegateToMirror}
def_sources_end()
}
void
os_trisquel_getsrc (char *option)
{
chsrc_view_file (OS_Apt_SourceList);
}
/**
* @consult https://help.mirrors.cernet.edu.cn/trisquel/
*/
void
os_trisquel_setsrc (char *option)
{
chsrc_ensure_root ();
chsrc_yield_source_and_confirm (os_trisquel);
chsrc_backup (OS_Apt_SourceList);
char *cmd = xy_strjoin (3, "sed -E -i 's@https?://.*/trisquel/?@", source.url, "@g' /etc/apt/sources.list");
chsrc_run (cmd, RunOpt_Default);
chsrc_run ("apt update", RunOpt_No_Last_New_Line);
chsrc_determine_chgtype (ChgType_Untested);
chsrc_conclude (&source);
}
void
os_trisquel_resetsrc (char *option)
{
os_trisquel_setsrc (option);
}